FROGANS A. Tamas
FNSL 3.0 STG Interactive
May 2004
Frogans Network System Language - 3.0
Status
Destined to the developer community, this document specifies version
3.0 of the FNSL and replaces and renders obsolete any previous
specifications concerning the FNSL. 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: fnsl@frogans.com.
Abstract
This document serves as a reference guide for the markup language
called the Frogans Network System Language (FNSL) which is used to
operate frogans networks.
Frogans networks are used to publish frogans on the Internet or on
private IP networks. 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-2004). All Rights Reserved.
Document URL: http://www.frogans.com/en/doc/FNSL30.txt
See 16.1. Full Copyright Statement of the FNSL Specifications.
Terms of Use for Developers and Software Publishers
The free use of the FNSL as a markup language for developers and
publishers of authoring tools and server applications is subject to
their respective terms of use.
See 16.2. Use of the FNSL by Developers.
See 16.3. Use of the FNSL by Publishers of Authoring Tools.
See 16.4. Use of the FNSL by Publishers of Server Applications.
STG Interactive Frogans Page [1]
FNSL 3.0 Frogans Network System Language May 2004
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Frogans Networks Architecture . . . . . . . . . . . . . . . . 7
3.1. Initialization and Update . . . . . . . . . . . . . . . . . 7
3.2. Frogans Addressing . . . . . . . . . . . . . . . . . . . . 8
3.3. Frogans Navigation . . . . . . . . . . . . . . . . . . . . 9
3.4. Frogans Player Update . . . . . . . . . . . . . . . . . . . 9
3.5. Architecture Diagram . . . . . . . . . . . . . . . . . . . 11
3.6. Future FNSL Compatibility . . . . . . . . . . . . . . . . . 12
4. FNSL Documents . . . . . . . . . . . . . . . . . . . . . . . 13
4.1. Document Structure . . . . . . . . . . . . . . . . . . . . 13
4.2. Document Character Set and Encoding . . . . . . . . . . . . 14
4.3. Character and Entity References . . . . . . . . . . . . . . 14
4.4. File Sizes . . . . . . . . . . . . . . . . . . . . . . . . 15
4.5. Loading Times . . . . . . . . . . . . . . . . . . . . . . . 15
4.6. Cache . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
5. Starting and Ending the Record - FROGANS-FNSL element . . . . 17
6. Defining the Content of the Record - RECORD element . . . . . 18
7. Making a Setup Record - SETUP element . . . . . . . . . . . . 22
8. Making a Certificate Record - CERTIFICATE element . . . . . . 24
9. Making a Topology Record - TOPOLOGY and SERVER elements . . . 38
10. Making a Lookup Record - LOOKUP, HOST and MENU elements . . . 41
11. Making an Error Record - ERROR element . . . . . . . . . . . 50
12. Making a Status Record - STATUS and PLAYER elements . . . . . 51
13. Making an Update Record - UPDATE and BINARY elements . . . . 58
14. Authenticating the Record - SIGNATURE element . . . . . . . . 61
15. Going On-line . . . . . . . . . . . . . . . . . . . . . . . . 63
16. Working with the FNSL . . . . . . . . . . . . . . . . . . . . 66
16.1. Full Copyright Statement of the FNSL Specifications . . . . 67
16.2. Use of the FNSL by Developers . . . . . . . . . . . . . . . 68
16.3. Use of the FNSL by Publishers of Authoring Tools . . . . . 68
16.4. Use of the FNSL by Publishers of Server Applications . . . 68
STG Interactive Frogans Page [2]
FNSL 3.0 Frogans Network System Language May 2004
1. Introduction
The Frogans Network System Language (FNSL) is a complete markup
language dedicated to the operation of frogans networks, which are
used to publish frogans on the Internet or on private IP networks.
Frogans is a hyperlink-based, distributed information system 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 Frogans Slide
Description Language (FSDL).
As for all information systems, Frogans has its own dedicated system
for addressing content. Each frogans is identified by a unique
frogans address, whose structure creates an even greater affinity
between the editor's content and the end-user.
A frogans address starts with the name of the frogans network on
which the frogans is published. For example, frogans addresses
starting 'frogans*' are associated with the main frogans network,
that is operated by STG Interactive.
To give Internet service providers and major content providers full
control over the addressing of their frogans, and to permit
enterprises publish frogans on their private IP networks, dedicated
frogans networks can be created through specific operator license
agreements.
The FNSL offers easy guidelines for operating scalable frogans
networks by creating standard documents and delivering them on the
Internet or on private IP networks.
FNSL documents (records) are authenticated by the means of digital
signatures, to ensure the secure access and use of frogans networks.
This document specifies version 3.0 of the FNSL. Future versions
presenting additional features of this markup language will be
released with higher version numbers, following input from frogans
network operators and the developers community.
STG Interactive Frogans Page [3]
FNSL 3.0 Frogans Network System Language May 2004
2. Terms
certificate record
A frogans network record used to initialize or update a frogans
network on the end-user's system.
dedicated frogans network
A public frogans network or a private frogans network that is
not the main frogans network.
end-user
A person using the Frogans Player software to consult frogans.
end-user's system
A computer or device connected to the Internet, or to a private
IP network, that can display frogans.
error record
A frogans network record returned by a lookup server to indicate
an error.
FNS server
A server in a Frogans Network System.
FNSL document
A file containing a sequence of characters which are organized
according to the FNSL specifications.
frogans
Sets of uniquely shaped slides which can be visualized by the
end-user using the Frogans Player. A frogans is published by a
frogans editor, on a frogans network, through a frogans address.
frogans address
An address which serves to reference a frogans. The format of a
frogans address is 'network*gatename' or
'network*gatename.extension', where 'network' is the name of
the frogans network on which the frogans is published. On the
main frogans network, where addresses start with 'frogans*',
the 'gatename' and 'extension' are chosen by the frogans editor.
frogans editor
A content editor who publishes a frogans on a frogans network.
frogans network
A scalable virtual network established on the Internet or on
a private IP network to publish frogans.
frogans network operator, operator
An enterprise or other organization which operates a frogans
network.
STG Interactive Frogans Page [4]
FNSL 3.0 Frogans Network System Language May 2004
frogans network record, record
A FNSL document needed for the operation of a frogans network.
Frogans Network System, FNS
A system made up of HTTP servers used to deliver the frogans
network records of a frogans network.
Frogans Player, player
A free downloadable software, published by STG Interactive, that
lets end-users browse and navigate frogans.
Frogans Slide Description Language, FSDL
A complete markup language dedicated to the development of
frogans.
lookup record
A frogans network record used to open a frogans on the end-
user's system. It contains technical and administrative
information about the frogans.
lookup server
A FNS server that delivers lookup records.
main frogans network
A public frogans network, operated by STG Interactive, where
frogans addresses start with 'frogans*'. On the main frogans
network, frogans can be published by any frogans editor,
individual or organization, from anywhere in the world, in any
language.
network key
A key used by a frogans network operator or STG Interactive to
generate digital signatures for topology, lookup and error
records on a frogans network.
platform
Basic technology of the end-user's system, in terms of hardware
and operating system. Each platform requires its own
implementation of the Frogans Player.
player reference network
The frogans network referred to in a certificate record, which
is used to deliver status and update records.
private frogans network
A frogans network established on a private IP network.
public frogans network
A frogans network established on the Internet.
STG Interactive Frogans Page [5]
FNSL 3.0 Frogans Network System Language May 2004
root key
A key used by STG Interactive to generate digital signatures for
setup, certificate, status and update records.
setup record
A frogans network record used to begin set up of a public
frogans network on the end-user's system.
status record
A frogans network record listing the different releases of the
Frogans Player for a specific platform, and the update status of
each.
topology record
A frogans network record referencing the lookup servers in a
Frogans Network System.
update record
A frogans network record containing the latest binary update of
the Frogans Player for a specific platform, to be installed on
the end-user's system.
STG Interactive Frogans Page [6]
FNSL 3.0 Frogans Network System Language May 2004
3. Frogans Networks Architecture
To maximize the quality of the service that the frogans network
operator delivers to its end-users, the architecture of a frogans
network is scalable, redundant and can be modified while running,
using load-balancing, fail-over and expiration processes.
The major components of the architecture are:
- Initialization and update
- Frogans addressing
- Frogans navigation
- Frogans Player update
3.1. Initialization and Update
A frogans network is initialized on the end-user's system by the
means of a certificate record, if the end-user has already downloaded
the Frogans Player.
A certificate record can be delivered to the end-user as an
independent file, in an e-mail or on a disk for example, or as a
document downloaded from a FNS server. The frogans network is
initialized when the end-user opens the file or downloads the
document.
The file extension of a certificate record is '.fnc', which is
associated with the MIME type 'application/vnd.frogans.fnc'. The file
name format for a certificate record is 'network.certificate.fnc',
where 'network' is the lower-case name of the frogans network. See 8.
Making a Certificate Record.
A certificate record can be automatically downloaded by the Frogans
Player to initialize a public frogans network, when the end-user
requests a frogans address on that network. To do so, the certificate
record is hosted in the root directory of a FNS server which has been
associated with the domain name 'network-certificate.frogans.net',
where 'network' is the lower-case name of the frogans network. The
certificate record is hosted using the file name format defined
above. No MIME type association on the FNS server is necessary.
Alternatively, a setup record can be automatically downloaded by the
Frogans Player to begin set up of a public frogans network, when the
end-user requests a frogans address on that network. To do so, the
setup record is hosted in the root directory of a FNS server which
has been associated with the domain name 'network-setup.frogans.net',
where 'network' is the lower-case name of the frogans network. The
setup record is hosted using the file name format
'network.setup.fnsl', where 'network' is the lower-case name of the
frogans network. No MIME type association on the FNS server is
necessary.
STG Interactive Frogans Page [7]
FNSL 3.0 Frogans Network System Language May 2004
The setup record contains information used by the Frogans Player to
redirect the end-user to the frogans network operator's web site. On
this web site, under specific conditions defined by the frogans
network operator (terms of use, registration, etc.), the end-user
can download the document containing the certificate record. See 7.
Making a Setup Record.
Once a frogans network is initialized on the end-user's system, the
certificate record is saved on the end-user's system. The certificate
record is checked each time the Frogans Player is run on the end-
user's system to see if it has expired. A certificate record has
expired if the period of time specified in the TTL attribute of the
RECORD element which started when the certificate record was saved or
last updated, has elapsed, or if the date specified in the EXPIRATION
attribute of the RECORD element has been exceeded. See 6. RECORD
element.
An expired certificate record is not deleted from the end-user's
system. It is automatically updated when the end-user requests a
frogans address on that frogans network. The certificate record can
also be updated if the end-user opens a file or downloads a document
containing a more recent and valid version of the certificate record.
The name of a frogans network is not case-sensitive. However, the
frogans network name can be displayed by the Frogans Player on the
end-user's system in upper and lower-case, according to the value
specified in the NETWORK attribute of the RECORD element, of the
certificate record.
3.2. Frogans Addressing
When the end-user requests a frogans address on a frogans network
that is already initialized on the end-user's system, the Frogans
Player downloads the topology record from the directory of a FNS
server whose location is indicated in the certificate record. The
topology record is hosted using the file name format
'network.topology.fnsl', where 'network' is the lower-case name of
the frogans network. No MIME type association on the FNS server is
necessary. See 9. Making a Topology Record.
Then, the Frogans Player downloads a lookup record from one of the
directories of the lookup servers whose locations are indicated in
the topology record. The lookup record is hosted using the file name
format 'network.lookup.gatename.fnsl' or if applicable,
'network.lookup.gatename.extension.fnsl', where 'network' is the
lower-case name of the frogans network, and 'gatename' and
'extension' are the lower-case gate name and lower-case extension of
the frogans address. No MIME type association on the FNS server is
necessary. See 10. Making a Lookup Record.
STG Interactive Frogans Page [8]
FNSL 3.0 Frogans Network System Language May 2004
Alternatively, the lookup record can be delivered by the lookup
server through a program whose name is indicated in the topology
record. The data sent by the Frogans Player to the lookup server is
'address=value', where 'value' is the lower-case requested frogans
address. See 15. Going On-line.
If the frogans address does not exist on the frogans network, an
error record is returned by the lookup server. The file name format
for an error record is 'network.error.errorcode.fnsl', where
'network' is the lower-case name of the frogans network, and
'errorcode' is a three-digit whole decimal number representing the
error code. See 11. Making an Error Record.
The lookup record contains technical and administrative information
used by the Frogans Player to open the home slide of the frogans on
the end-user's system.
A frogans address is not case-sensitive. However, the frogans address
can be displayed by the Frogans Player on the end-user's system in
upper and lower-case, according to the value specified in the
ADDRESS attribute of the LOOKUP element, of the lookup record.
Improvements in the publishing technology may make it necessary for
the end-user to update the Frogans Player before being able to open a
specific frogans. See 3.6. Future FNSL Compatibility.
3.3. Frogans Navigation
The frogans slides are developed using the Frogans Slide Description
Language (FSDL), which lets the end-user navigate in the frogans
using the Frogans Player.
3.4. Frogans Player Update
The Frogans Player is regularly updated by the end-user through a
secured, user-friendly process, that preserves the frogans networks
already initialized on the end-user's system, the FNSL documents in
the cache and the end-user's settings (recently visited frogans,
favorite frogans, language, proxy configuration, etc.).
When the end-user requests a frogans address on a frogans network
that is already initialized on the end-user's system, the Frogans
Player downloads a status record from the directory of a FNS server
of the player reference network, whose location is indicated in the
certificate record. The status record is hosted using the file name
format 'playerreferencenetwork.status.playerplatform.fnsl', where
'playerreferencenetwork' is the lower-case name of the player
reference network, and 'playerplatform' is the lower-case identifier
of the platform. No MIME type association on the FNS server is
necessary. See 12. Making a Status Record.
STG Interactive Frogans Page [9]
FNSL 3.0 Frogans Network System Language May 2004
The status record lists the different releases of the Frogans Player
for the platform and the update status of each version. If the
version of the Frogans Player on the end-user's system has expired,
the end-user is requested to update the Frogans Player. Otherwise,
the end-user can be notified regularly to update the Frogans Player
when a more recent version is available.
When the end-user confirms the update, the Frogans Player downloads
an update record from the directory of a FNS server of the player
reference network, whose location is indicated in the status record.
The update record is hosted using the file name format
'playerreferencenetwork.update.playerplatform.fnsl', where
'playerreferencenetwork' is the lower-case name of the player
reference network, and 'playerplatform' is the lower-case identifier
of the platform. No MIME type association on the FNS server is
necessary. See 13. Making an Update Record.
For each platform on which the Frogans Player is implemented, a
specific status record and a specific update record are required.
When the Frogans Player becomes available on a new platform, it can
easily be made available on the frogans network, using a specific
status record and a specific update record.
In order for different frogans networks to function on the end-user's
system, the information contained in the status records and update
records of all frogans networks must be synchronized.
To facilitate the management of status records and update records on
a frogans network, the certificate record may indicate another
frogans network as the player reference network. If so, the FNS
servers of the player reference network must be accessible by all
end-users of the frogans network. Initialization of the player
reference network on the end-user's system is unnecessary, but an
agreement between the two frogans network operators is required.
See 8. Making a Certificate Record.
STG Interactive Frogans Page [10]
FNSL 3.0 Frogans Network System Language May 2004
3.5. Architecture Diagram
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
SETUP
| .--------<---------.
Initialization | | |
and Update | | |
[r] '---->----- CERTIFICATE ------>-----'
| |
| |
.--------<--------' |
| |
~~~~~~~~~~~~~~~~~)~~~~~~~~~~~~~~~~~~~~~)~~~~~~~~~~~~~~~~~~~~~~~~
| |
| TOPOLOGY
| |
Frogans | .-----<-----'----->-----.
Addressing | | |
[n] | | |
| ERROR LOOKUP
| |
| |
~~~~~~~~~~~~~~~~~)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~)~~~~~~~~~~~~
| |
| .----'----.
Frogans | | frogans |
Navigation | | (FSDL) |
| '---------'
|
~~~~~~~~~~~~~~~~~)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
'------.------>-------.--------->-------.
| | ... |
| | |
STATUS STATUS STATUS
Frogans | | |
Player | | |
Update UPDATE UPDATE UPDATE
[r] | | |
.----'----. .----'----. .----'----.
| Frogans | | Frogans | | Frogans |
| Player | | Player | | Player |
'---------' '---------' '---------'
platform a platform b platform z
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Legend
[r]: records digitally signed using the root key
[n]: records digitally signed using the network key
STG Interactive Frogans Page [11]
FNSL 3.0 Frogans Network System Language May 2004
3.6. Future FNSL Compatibility
In future versions of the FNSL specifications, new attributes and
elements may be added to the FNSL document. These new elements may
contain other elements, processing instructions and CDATA sections.
In order to ensure secured, continuing evolution of the technology, a
Frogans Player that runs with version 3.0 of the FNSL specifications,
will ignore unrecognized attributes and elements when parsing a FNSL
document if the following conditions are met:
- the VERSION attribute of the FROGANS-FNSL element specifies a
version higher than 3.0
- the FNSL document can be parsed according to the FNSL
specifications 3.0, by ignoring the unrecognized attributes and
elements
- the digital signature of the FNSL document is valid
- the unrecognized attributes, of recognized elements, are associated
with the RECORD, SETUP, CERTIFICATE, TOPOLOGY, SERVER, LOOKUP,
HOST, MENU, ERROR, STATUS, PLAYER or UPDATE elements
- the unrecognized elements, and their attributes, are contained in
the SETUP, CERTIFICATE, TOPOLOGY, SERVER, LOOKUP, HOST, MENU,
ERROR, STATUS, PLAYER or UPDATE elements
To facilitate the update of the Frogans Player on the end-user's
system when the publishing technology is improved, a Frogans Player
that runs with version 3.0 of the FNSL specifications, will notify
the end-user to update the Frogans Player when unrecognized attribute
values are found in a lookup record, if the following conditions are
met:
- the VERSION attribute of the FROGANS-FNSL element specifies a
version higher than 3.0
- the FNSL document can be parsed according to the FNSL
specifications 3.0, by ignoring the unrecognized attribute values
- the digital signature of the FNSL document is valid
- The unrecognized values are specified in the USER-AUTHENTICATION,
FROGANS-PROTOCOL, FSDL-VERSION and FSDL-ENCODING attributes of the
HOST element
The new version specified in the VERSION attribute of the
FROGANS-FNSL element must always correspond to the version of a FNSL
specifications document published by STG Interactive. The FNSL
document must be compliant with the new version. Each update record
on the player reference network must contain a Frogans Player that
runs with the new version.
The process used to generate digital signatures is able to handle
frogans network records containing additional elements, attributes
and other items (processing instructions, CDATA sections) that are
not outlined in the present specifications. See 14. Authenticating
the Record.
STG Interactive Frogans Page [12]
FNSL 3.0 Frogans Network System Language May 2004
4. FNSL Documents
4.1. Document Structure
The FNSL document conforms to XML 1.0 specifications to assure
maximum interoperability with servers and end-user systems.
The FNSL document must start with one of the following XML
declarations:
As the FNSL document encoding is always UTF-8, the encoding attribute
in the XML declaration is not used by the Frogans Player. See 4.2.
Document Character Set And Encoding.
The XML declaration is then followed by one of these document type
declarations:
To maintain FNSL document clarity and readability, the document type
declaration must not contain an internal subset.
The root element of the FNSL document is FROGANS-FNSL. See 5.
FROGANS-FNSL element.
All element names and their attributes are always written in
uppercase in the FNSL document. Attribute values are delimited by
single or double quotation marks.
All elements contained in the FNSL document must have an end tag. For
example:
...elements...
Empty elements must either have an end tag or the start tag must end
with />. For example:
can also be written
STG Interactive Frogans Page [13]
FNSL 3.0 Frogans Network System Language May 2004
The FNSL document may contain comments using the common syntax
. To maintain record authentication,
comments may only be placed between the start and end tag of the
RECORD element. See 6. RECORD element.
An error left in the FNSL document will lead to a parsing error
message.
4.2. Document Character Set and Encoding
To optimize the file size of the FNSL documents delivered on the
frogans network, the FNSL document encoding is always UTF-8
(RFC 2279). The encoding is not specified in the XML declaration.
The character set of the FNSL document is ISO 10646/Unicode.
An optional BOM (Byte Order Mark) can be placed at the start of the
FNSL document.
4.3. Character and Entity References
The FNSL document may contain numeric character references and entity
references.
Numeric character references can be used with the syntax: D; or
H; 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)
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.
STG Interactive Frogans Page [14]
FNSL 3.0 Frogans Network System Language May 2004
An ampersand (&) or a less than sign (<) must always be replaced by
their numeric character references or their entity references in the
value of an attribute and in the text characters placed between the
start and end tags of an element.
4.4. File Sizes
To minimize loading time and storage space of the FNSL document on
the end-user's system, the file sizes of the FNSL document should not
exceed the following limits:
- setup record: up to 8,192 bytes
- certificate record: up to 32,768 bytes
- topology record: up to 32,768 bytes
- lookup record: up to 16,384 bytes
- error record: up to 4,096 bytes
- status record: up to 32,768 bytes
- update record: up to 4,194,304 bytes
The file sizes of the FNSL document must not exceed the following
limits:
- setup record: up to 16,384 bytes
- certificate record: 65,536 bytes
- topology record: 65,536 bytes
- lookup record: 32,768 bytes
- error record: 8,192 bytes
- status record: 65,536 bytes
- update record: 8,388,608 bytes
4.5. Loading Times
The loading times of the FNSL document must not exceed the following
limits, otherwise a time out will occur on the end-user's system:
- setup record: up to 60 seconds
- certificate record: up to 60 seconds
- topology record: up to 60 seconds
- lookup record: up to 60 seconds
- error record: up to 60 seconds
- status record: up to 90 seconds
- update record: up to 7,200 seconds
If more than one attempt is necessary to load the FNSL document,
these limits are applicable for each attempt.
STG Interactive Frogans Page [15]
FNSL 3.0 Frogans Network System Language May 2004
4.6. Cache
Topology records, lookup records and status records are saved in a
cache directory on the end-user's system to avoid the repeated
loading of the same record, when the end-user requests a frogans
address on a frogans network.
A frogans network record saved in the cache directory is
automatically removed if the period of time specified in the TTL
attribute of the RECORD element, which started when the frogans
network record was saved, has elapsed, or if the date specified in
the EXPIRATION attribute of the RECORD element has been exceeded.
See 6. RECORD element.
The maximum number of lookup records in the cache directory is 1024.
If the number of lookup records in the cache directory is at its
maximum and a new lookup record is added, the oldest lookup record in
the cache directory is deleted. There is no limit to the number of
topology records and status records in the cache directory.
Certificate records, setup records, error records and update records
are not saved in the cache directory.
For more information about the way certificate records are saved and
updated on the end-user's system, see 3.1. Initialization and Update.
STG Interactive Frogans Page [16]
FNSL 3.0 Frogans Network System Language May 2004
5. Starting and Ending the Record - FROGANS-FNSL element
The FROGANS-FNSL element defines the beginning and the end of the
FNSL document. It is a root element, as it contains all other
elements necessary to define the record.
The FROGANS-FNSL element contains one RECORD element and one
SIGNATURE element. The FROGANS-FNSL element does not contain any
other elements.
For FNSL document readability, the RECORD element should be placed
before the SIGNATURE element.
For information about the compatibility of the FNSL specifications
version 3.0 with future versions, see 3.6. Future FNSL Compatibility.
The attribute associated with the FROGANS-FNSL element is:
VERSION - Required
The version of the specifications to which the FNSL document
conforms.
* "FNSL3.0" : FNSL specifications version 3.0
STG Interactive Frogans Page [17]
FNSL 3.0 Frogans Network System Language May 2004
6. Defining the Content of the Record - RECORD element
The RECORD element defines either a setup record, a certificate
record, a topology record, a lookup record, an error record, a status
record or an update record.
The RECORD element is placed between the start and end tags of the
FROGANS-FNSL element. Only one RECORD element can be used in the FNSL
document.
The RECORD element contains one of the following elements:
- SETUP element to define a setup record
- CERTIFICATE element to define a certificate record
- TOPOLOGY element to define a topology record
- LOOKUP element to define a lookup record
- ERROR element to define an error record
- STATUS element to define a status record
- UPDATE element to define an update record
The attributes associated with the RECORD element are:
NETWORK - Required
The name of the frogans network. Is a case sensitive string of
alphanumeric characters: A-Z, a-z, 0-9 and dash, without spaces.
The string cannot start or end with a dash. The string must
contain between 1 and 24 characters.
Examples of accepted values:
NETWORK="frogans" (main frogans network)
NETWORK="MyNetwork" (dedicated frogans network)
NETWORK="my-network" (dedicated frogans network)
Examples of refused values:
NETWORK=""
NETWORK="my network"
NETWORK="My_Network"
NETWORK="my.network"
NETWORK="-MyNetwork"
NETWORK="MyNetwork!"
TTL - Required
The period of time used to determine if a FNSL document, which
was saved on the end-user's system, has expired. Is a whole
decimal number representing minutes between 0 and 525600. Signs
are not accepted.
If the FNSL document is a setup record, an error record or an
update record, the TTL attribute has no effect and its value
should be set to "0".
STG Interactive Frogans Page [18]
FNSL 3.0 Frogans Network System Language May 2004
For more information about the expiration of certificate
records, see 3.1. Initialization and Update.
For more information about the expiration of topology records,
lookup records and status records in the cache directory,
see 4.6. Cache.
The choice of a correct TTL attribute value is critical to the
functioning of the frogans network. A correct value permits the
regular update of frogans network records on the end-user's
system, and prevents end-users from overloading the FNS servers
when the date specified in the EXPIRATION attribute of the
RECORD element is exceeded.
Examples of accepted values:
TTL="0" (expires immediately)
TTL="525600" (maximum period of time, one year)
TTL="1440" (one day)
Examples of refused values:
TTL=""
TTL="-1"
TTL="+1440"
EXPIRATION - Required
The date representing the last day on which the FNSL document is
valid. Time reference is UTC (Coordinated Universal Time). Is a
string of eleven characters in the 'dd-mmm-yyyy' date format,
without spaces.
'dd' is a two-digit whole decimal number representing the day of
the month.
'mmm' is a non-case sensitive string of three characters
representing the month of the year: 'Jan' for January, 'Feb' for
February, 'Mar' for March, 'Apr' for April, 'May' for May, 'Jun'
for June, 'Jul' for July, 'Aug' for August, 'Sep' for September,
'Oct' for October, 'Nov' for November or 'Dec' for December.
'yyyy' is a four-digit whole decimal number representing the
year.
The value must be greater than or equal to the date included in
the value of the UID attribute of the RECORD element.
If the FNSL document is a certificate record, the value must not
exceed the value specified in the LICENSE-VALIDITY attribute of
the CERTIFICATE element. See 8. Making a Certificate Record.
STG Interactive Frogans Page [19]
FNSL 3.0 Frogans Network System Language May 2004
If the FNSL document is a lookup record, the value must not
exceed the value specified in the ADDRESS-VALIDITY attribute of
the LOOKUP element. See 10. Making a Lookup Record.
If the FNSL document is a status record, the value is not
related to those specified in the PLAYER-VALIDITY attributes of
the PLAYER elements. See 12. Making a Status Record.
Examples of accepted values:
EXPIRATION="01-Jan-2005"
EXPIRATION="01-JAN-2005"
EXPIRATION="01-jan-2005"
Examples of refused values:
EXPIRATION=""
EXPIRATION="01 Jan 2005"
EXPIRATION="01_Jan_2005"
EXPIRATION="01/Jan/2005"
EXPIRATION="1-Jan-2005"
EXPIRATION="01-January-2005"
EXPIRATION="01-01-2005"
EXPIRATION="01-Jan-05"
EXPIRATION="29-Feb-2005"
UID - Required
The unique identifier of the FNSL document. Is a string of
thirty characters in the '#aaaa-yyyymmdd-nnnnnnnnnn-rrrr'
format, without spaces.
'aaaa' is a string of four alphanumeric characters: A-Z, a-z,
0-9 representing the identifier of the author editing the FNSL
document, according to the frogans network operator agreement.
'yyyymmdd' is the date when the FNSL document was edited:
'yyyy' is a four-digit whole decimal number representing the
year
'mm' is a two-digit whole decimal number representing the month
'dd' is a two-digit whole decimal number representing the day
Time reference is UTC (Coordinated Universal Time).
'nnnnnnnnnn' is a ten-digit whole decimal number representing a
unique number for each FNSL document edited by the same author,
that day.
'rrrr' is a four-digit whole decimal number, which can be used
at the discretion of the author.
STG Interactive Frogans Page [20]
FNSL 3.0 Frogans Network System Language May 2004
All FNSL documents used in the frogans network must have a
unique identifier. If the FNSL document is updated, the
identifier must also be updated.
Examples of accepted values:
UID="#a101-20041231-0000000001-9537"
UID="#a101-20041231-0000000002-5239"
UID="#b273-20041231-0000000755-3238"
Examples of refused values:
UID=""
UID="a101-20041231-0000000001-9537"
UID="#a101 20041231 0000000001 9537"
UID="#a101_20041231_0000000001_9537"
UID="#a01-20041231-0000000001-9537"
UID="#a101-041231-0000000001-9537"
UID="#a101-20041231-1-9537"
UID="#a101-20041231-0000000001-953"
STG Interactive Frogans Page [21]
FNSL 3.0 Frogans Network System Language May 2004
7. Making a Setup Record - SETUP element
The SETUP element defines a setup record, which is used to begin
setup of the frogans network on the end-user's system.
The SETUP element is placed between the start and end tags of the
RECORD element. The SETUP element does not contain any other
elements.
Only one SETUP element can be used in the FNSL document.
Setup records cannot be used to begin setup of private frogans
networks. For more information about frogans networks initialization,
see 3.1. Initialization and Update.
The attributes associated with the SETUP element are:
WEBSITE-SETUP - Required
The URL of a Web page belonging to the frogans network operator.
The Web page contains information about the initialization of
the frogans network on the end-user's system.
The URL must begin with 'http://' or 'https://' and can contain
up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Examples of accepted values:
WEBSITE-SETUP="http://www.SpecificDomainName.com/setup.htm"
WEBSITE-SETUP="http://www.SpecificDomainName.com/setup.php"
WEBSITE-SETUP="http://www.SpecificDomainName.com/dir/"
WEBSITE-SETUP="http://www.SpecificDomainName.com:81/dir/"
WEBSITE-SETUP="https://www.SpecificDomainName.com/setup.htm"
WEBSITE-SETUP="http://1.2.3.4/setup.htm"
Examples of refused values:
WEBSITE-SETUP=""
WEBSITE-SETUP="www.SpecificDomainName.com/setup.htm"
WEBSITE-SETUP=
"http://www.SpecificDomainName.com/setup.php?param=28"
WEBSITE-SETUP="mailto:Name@SpecificDomainName.com"
WEBSITE-SETUP="frogans*GateName"
FORWARD-ADDRESS - Required
Indicates if the frogans address requested by the end-user, is
transmitted to the frogans network operator using the URL
specified in the WEBSITE-SETUP attribute.
STG Interactive Frogans Page [22]
FNSL 3.0 Frogans Network System Language May 2004
The frogans address is transmitted by adding a query to the URL
specified in the WEBSITE-SETUP attribute. The format of the
query is '?address=value', where 'value' is the case sensitive
frogans address requested by the end-user.
If the frogans address is transmitted, the frogans network
operator can include a frogans short-cut on his Web page. The
frogans short-cut permits the end-user to open that frogans, as
soon as the frogans network has been initialized on the end-
user's system.
For more information about frogans short-cuts, see FSDL
specifications 2.1 (20. Creating Short-cuts and Links to a
Frogans).
* "OFF" specifies that the frogans address is not
transmitted.
* "ON" specifies that the frogans address is transmitted.
STG Interactive Frogans Page [23]
FNSL 3.0 Frogans Network System Language May 2004
8. Making a Certificate Record - CERTIFICATE element
The CERTIFICATE element defines a certificate record, which is used
to initialize the frogans network on the end-user's system.
The CERTIFICATE element is placed between the start and end tags of
the RECORD element. The CERTIFICATE element does not contain any
other elements.
Only one CERTIFICATE element can be used in the FNSL document.
For more information about frogans networks initialization and
update, see 3.1. Initialization and Update.
The attributes associated with the CERTIFICATE element are:
OPERATOR-NAME - Required
The name of the frogans network operator. Is a case sensitive
string of alphanumeric characters: A-Z, a-z, 0-9, spaces and
.-',()@!?*:%
The string must contain between 1 and 64 characters.
Examples of accepted values:
OPERATOR-NAME="STG Interactive S.A." (main frogans network)
OPERATOR-NAME="Enterprise Name Inc."
OPERATOR-NAME="Enterprise & Co"
Examples of refused values:
OPERATOR-NAME=""
OPERATOR-NAME="Enterprise+/"
OPERATOR-NAME="Enterprise & Co"
OPERATOR-ADDRESS - Required
The physical address of the frogans network operator. Is a case
sensitive string of alphanumeric characters: A-Z, a-z, 0-9,
spaces and .-',()/+_
The string must contain between 1 and 128 characters.
Examples of accepted values:
OPERATOR-ADDRESS="29 avenue Mozart, 75016 Paris - France"
OPERATOR-ADDRESS=
"1600 Pennsylvania Avenue NW, Washington DC, 20500 - USA"
Examples of refused values:
OPERATOR-ADDRESS=""
OPERATOR-ADDRESS="29 avenue Mozart: 75016 Paris - France"
OPERATOR-ADDRESS="*29 avenue Mozart, 75016 Paris - France*"
STG Interactive Frogans Page [24]
FNSL 3.0 Frogans Network System Language May 2004
LICENSE-TYPE - Required
The name of the license assigned to the frogans network
operator. Is a case sensitive string of alphanumeric characters:
A-Z, a-z, 0-9, spaces and .-',()@!?*:%/+_
The string must contain between 1 and 128 characters.
Examples of accepted values:
LICENSE-TYPE="Main Frogans Network" (main frogans network)
LICENSE-TYPE="Intranet7" (dedicated frogans network)
LICENSE-TYPE="ISP" (dedicated frogans network)
LICENSE-TYPE="Mobile2" (dedicated frogans network)
Examples of refused values:
LICENSE-TYPE=""
LICENSE-TYPE="Intranet=7"
LICENSE-TYPE="Intranet\2"
LICENSE-DESCRIPTION - Required
The description of the license assigned to the frogans network
operator. Is a case sensitive string of alphanumeric characters:
A-Z, a-z, 0-9, spaces and .-',()@!?*:%/+_
The string must contain between 1 and 128 characters.
Examples of accepted values:
LICENSE-DESCRIPTION="Open Frogans Addresses"
LICENSE-DESCRIPTION="Corporate Use 5000+ End-Users"
Examples of refused values:
LICENSE-DESCRIPTION=""
LICENSE-DESCRIPTION="Corporate Use >5000 End-Users"
LICENSE-DESCRIPTION="Corporate Use\ 5000+ End-Users"
LICENSE-REF - Required
The reference of the license assigned to the frogans network
operator. Is a non-case sensitive string of sixteen characters
in the 'FNL-nnnnnnnnnnnn' format, without spaces.
'nnnnnnnnnnnn' is a twelve-digit whole decimal number
representing the unique reference of the license.
Examples of accepted values:
LICENSE-REF="FNL-041231000001"
LICENSE-REF="FNL-050101000002"
LICENSE-REF="fnl-060228002205"
STG Interactive Frogans Page [25]
FNSL 3.0 Frogans Network System Language May 2004
Examples of refused values:
LICENSE-REF=""
LICENSE-REF="050101000002"
LICENSE-REF="FNL050101000002"
LICENSE-REF="FNL-0501010000029"
LICENSE-REF="FNL-05010100000A"
LICENSE-VALIDITY - Required
The last day on which the license assigned to the frogans
network operator is valid. Time reference is UTC (Coordinated
Universal Time). Is a string of eleven characters in the
'dd-mmm-yyyy' date format, without spaces.
'dd' is a two-digit whole decimal number representing the day of
the month.
'mmm' is a non-case sensitive string of three characters
representing the month of the year: 'Jan' for January, 'Feb' for
February, 'Mar' for March, 'Apr' for April, 'May' for May, 'Jun'
for June, 'Jul' for July, 'Aug' for August, 'Sep' for September,
'Oct' for October, 'Nov' for November or 'Dec' for December.
'yyyy' is a four-digit whole decimal number representing the
year.
Examples of accepted values:
LICENSE-VALIDITY="01-Jan-2005"
LICENSE-VALIDITY="01-JAN-2005"
LICENSE-VALIDITY="01-jan-2005"
Examples of refused values:
LICENSE-VALIDITY=""
LICENSE-VALIDITY="01 Jan 2005"
LICENSE-VALIDITY="01_Jan_2005"
LICENSE-VALIDITY="01/Jan/2005"
LICENSE-VALIDITY="1-Jan-2005"
LICENSE-VALIDITY="01-January-2005"
LICENSE-VALIDITY="01-01-2005"
LICENSE-VALIDITY="01-Jan-05"
LICENSE-VALIDITY="29-Feb-2005"
LICENSE-PROVIDER - Required
The name of the company providing the license agreement to the
frogans network operator. Is a case sensitive string of
alphanumeric characters: A-Z, a-z, 0-9, spaces and
.-',()@!?*:%
The string must contain between 1 and 64 characters.
STG Interactive Frogans Page [26]
FNSL 3.0 Frogans Network System Language May 2004
Examples of accepted values:
LICENSE-PROVIDER="STG Interactive S.A."
LICENSE-PROVIDER="Enterprise Name Inc."
LICENSE-PROVIDER="Enterprise & Co"
Examples of refused values:
LICENSE-PROVIDER=""
LICENSE-PROVIDER="Enterprise+/"
LICENSE-PROVIDER="Enterprise & Co"
PRIVATE-NETWORK - Required
Indicates if the frogans network is a private frogans network.
If the frogans network is a private frogans network, the FNS
servers, as well as the servers hosting the frogans, are
accessed by the Frogans Player using private IP addresses.
Private IPv4 address blocks are (RFC 3330):
- 10.0.0.0/8 (10.0.0.0 to 10.255.255.255)
- 172.16.0.0/12 (172.16.0.0 to 172.31.255.255)
- 192.168.0.0/16 (192.168.0.0 to 192.168.255.255)
If the frogans network is not a private frogans network, it is
considered a public frogans network, and the FNS servers, as
well as the servers hosting the frogans, are accessed by the
Frogans Player using public IP addresses.
* "OFF" specifies that the frogans network is not a private
frogans network.
* "ON" specifies that the frogans network is a private
frogans network.
WEBSITE-HELP - Required
The URL of a Web page belonging to the frogans network operator.
The document contains information to help the end-user should a
critical error occur on the frogans network.
The URL must begin with 'http://' or 'https://' and can contain
up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL can contain a query, but not a fragment.
Examples of accepted values:
WEBSITE-HELP="http://www.SpecificDomainName.com/help.htm"
WEBSITE-HELP="http://www.SpecificDomainName.com/help.php"
WEBSITE-HELP="http://www.SpecificDomainName.com/dir/"
WEBSITE-HELP="https://www.SpecificDomainName.com/help.htm"
STG Interactive Frogans Page [27]
FNSL 3.0 Frogans Network System Language May 2004
WEBSITE-HELP=
"http://www.SpecificDomainName.com/help.php?param=28"
WEBSITE-HELP="http://www.SpecificDomainName.com:81/dir/"
WEBSITE-HELP="http://1.2.3.4/help.htm"
WEBSITE-HELP="http://1.2.3.4/dir/help.htm"
Examples of refused values:
WEBSITE-HELP=""
WEBSITE-HELP="www.SpecificDomainName.com/help.htm"
WEBSITE-HELP="mailto:Name@SpecificDomainName.com"
WEBSITE-HELP="frogans*GateName"
ADDRESS-COLOR - Required
The text color of the frogans addresses associated with the
frogans network, when displayed by the Frogans Player on the
end-user's system. 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).
Examples of accepted values:
ADDRESS-COLOR="#000000" (black)
ADDRESS-COLOR="#FFFFFF" (white)
ADDRESS-COLOR="#ffffff" (white)
ADDRESS-COLOR="#C0C0C0" (silver)
ADDRESS-COLOR="#800000" (maroon)
ADDRESS-COLOR="#800080" (purple)
ADDRESS-COLOR="#FF00FF" (fuchsia)
ADDRESS-COLOR="#00FF00" (lime)
ADDRESS-COLOR="#808000" (olive)
ADDRESS-COLOR="#008080" (teal)
ADDRESS-COLOR="#00FFFF" (aqua)
Examples of refused values:
ADDRESS-COLOR=""
ADDRESS-COLOR="# FF0000"
ADDRESS-COLOR="FF0000"
ADDRESS-COLOR="#FF000"
ADDRESS-COLOR="#F00"
ADDRESS-COLOR="red"
ADDRESS-BGCOLOR - Required
The background color of the frogans addresses associated with
the frogans network, when displayed by the Frogans Player on the
end-user's system. 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).
STG Interactive Frogans Page [28]
FNSL 3.0 Frogans Network System Language May 2004
To increase readability of the frogans addresses, the background
color should be complementary to the text color specified in the
ADDRESS-COLOR attribute of the CERTIFICATE element.
Examples of accepted values:
ADDRESS-BGCOLOR="#000000" (black)
ADDRESS-BGCOLOR="#FFFFFF" (white)
ADDRESS-BGCOLOR="#ffffff" (white)
ADDRESS-BGCOLOR="#C0C0C0" (silver)
ADDRESS-BGCOLOR="#800000" (maroon)
ADDRESS-BGCOLOR="#800080" (purple)
ADDRESS-BGCOLOR="#FF00FF" (fuchsia)
ADDRESS-BGCOLOR="#00FF00" (lime)
ADDRESS-BGCOLOR="#808000" (olive)
ADDRESS-BGCOLOR="#008080" (teal)
ADDRESS-BGCOLOR="#00FFFF" (aqua)
ADDRESS-BGCOLOR="#FFBF00" (free frogans network)
Examples of refused values:
ADDRESS-BGCOLOR=""
ADDRESS-BGCOLOR="# FF0000"
ADDRESS-BGCOLOR="FF0000"
ADDRESS-BGCOLOR="#FF000"
ADDRESS-BGCOLOR="#F00"
ADDRESS-BGCOLOR="red"
CERTIFICATE-DIRECTORY-HTTP - Required
The URL of a directory on a FNS server. The directory contains
the frogans network's most recent certificate record, which is
downloaded by the Frogans Player if the current certificate
record has expired on the end-user's system. See 3.1.
Initialization and Update.
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Examples of accepted values:
CERTIFICATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/"
CERTIFICATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/"
CERTIFICATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
CERTIFICATE-DIRECTORY-HTTP="http://1.2.3.4/"
CERTIFICATE-DIRECTORY-HTTP="http://1.2.3.4/dir/"
STG Interactive Frogans Page [29]
FNSL 3.0 Frogans Network System Language May 2004
Examples of refused values:
CERTIFICATE-DIRECTORY-HTTP=""
CERTIFICATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir"
CERTIFICATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/network.certificate
.fnc"
CERTIFICATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
CERTIFICATE-DIRECTORY-HTTP=
"https://www.SpecificDomainName.com/dir/"
CERTIFICATE-DIRECTORY-HTTP="www.SpecificDomainName.com/dir/"
CERTIFICATE-DIRECTORY-HTTP=
"mailto:Name@SpecificDomainName.com"
CERTIFICATE-DIRECTORY-HTTP="frogans*GateName"
CERTIFICATE-DIRECTORY-B-HTTP - Required
The URL of a directory on a FNS server. The directory contains
the same certificate record as the one found in the primary
directory specified in the CERTIFICATE-DIRECTORY-HTTP attribute
of the CERTIFICATE element. The Frogans Player will download the
certificate record from the directory if it cannot load it from
the primary directory (fail-over process).
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Using the same directory for both the directory and the primary
directory, or hosting them on the same FNS server, will cancel
the efficiency of the fail-over process.
Examples of accepted values:
CERTIFICATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/"
CERTIFICATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/"
CERTIFICATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
CERTIFICATE-DIRECTORY-B-HTTP="http://1.2.3.4/"
CERTIFICATE-DIRECTORY-B-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
CERTIFICATE-DIRECTORY-B-HTTP=""
CERTIFICATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir"
STG Interactive Frogans Page [30]
FNSL 3.0 Frogans Network System Language May 2004
CERTIFICATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/network.certificate
.fnc"
CERTIFICATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
CERTIFICATE-DIRECTORY-B-HTTP=
"https://www.SpecificDomainName.com/dir/"
CERTIFICATE-DIRECTORY-B-HTTP=
"www.SpecificDomainName.com/dir/"
CERTIFICATE-DIRECTORY-B-HTTP=
"mailto:Name@SpecificDomainName.com"
CERTIFICATE-DIRECTORY-B-HTTP="frogans*GateName"
TOPOLOGY-DIRECTORY-HTTP - Required
The URL of a directory on a FNS server. The directory contains
the frogans network's most recent topology record, which is
downloaded by the Frogans Player if the topology record for that
frogans network has not been saved in the cache directory or has
been removed. See 4.6. Cache.
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
For more information about topology records, see 9. Making a
Topology Record.
Examples of accepted values:
TOPOLOGY-DIRECTORY-HTTP="http://www.SpecificDomainName.com/"
TOPOLOGY-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/"
TOPOLOGY-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
TOPOLOGY-DIRECTORY-HTTP="http://1.2.3.4/"
TOPOLOGY-DIRECTORY-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
TOPOLOGY-DIRECTORY-HTTP=""
TOPOLOGY-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir"
TOPOLOGY-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/network.topology.fn
sl"
TOPOLOGY-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
TOPOLOGY-DIRECTORY-HTTP=
"https://www.SpecificDomainName.com/dir/"
TOPOLOGY-DIRECTORY-HTTP="www.SpecificDomainName.com/dir/"
STG Interactive Frogans Page [31]
FNSL 3.0 Frogans Network System Language May 2004
TOPOLOGY-DIRECTORY-HTTP="mailto:Name@SpecificDomainName.com"
TOPOLOGY-DIRECTORY-HTTP="frogans*GateName"
TOPOLOGY-DIRECTORY-B-HTTP - Required
The URL of a directory on a FNS server. The directory contains
the same topology record as the one found in the primary
directory specified in the TOPOLOGY-DIRECTORY-HTTP attribute of
the CERTIFICATE element. The Frogans Player will download the
topology record from the directory if it cannot load it from the
primary directory (fail-over process).
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Using the same directory for both the directory and the primary
directory, or hosting them on the same FNS server, will cancel
the efficiency of the fail-over process.
Examples of accepted values:
TOPOLOGY-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/"
TOPOLOGY-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/"
TOPOLOGY-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
TOPOLOGY-DIRECTORY-B-HTTP="http://1.2.3.4/"
TOPOLOGY-DIRECTORY-B-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
TOPOLOGY-DIRECTORY-B-HTTP=""
TOPOLOGY-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir"
TOPOLOGY-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/network.topology.fn
sl"
TOPOLOGY-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
TOPOLOGY-DIRECTORY-B-HTTP=
"https://www.SpecificDomainName.com/dir/"
TOPOLOGY-DIRECTORY-B-HTTP="www.SpecificDomainName.com/dir/"
TOPOLOGY-DIRECTORY-B-HTTP=
"mailto:Name@SpecificDomainName.com"
TOPOLOGY-DIRECTORY-B-HTTP="frogans*GateName"
STG Interactive Frogans Page [32]
FNSL 3.0 Frogans Network System Language May 2004
NETWORK-KEY-LENGTH - Required
The length of the network key, in bits.
For more information about digital signature generation, see 14.
Authenticating the Record.
* "2048" specifies that the length of the network key is
2048 bits.
NETWORK-KEY-EXPONENT - Required
The public exponent of the network key. Is a case sensitive
string of alphanumeric characters: A-Z, a-z, 0-9, plus sign,
equal sign and slash (/), without spaces.
The public exponent is a whole, odd decimal number that is made
up of a sequence of bytes, each byte representing 8 bits of
information, with the most significant bit first. The public
exponent is encoded using Base64 data encoding (RFC 3548).
For more information about choosing a valid public exponent,
see 14. Authenticating the Record.
Examples of accepted values:
NETWORK-KEY-EXPONENT="AQAB" (65537 or 0x010001)
NETWORK-KEY-EXPONENT="Aw==" (3 or 0x03)
Examples of refused values:
NETWORK-KEY-EXPONENT=""
NETWORK-KEY-EXPONENT="Aw="
NETWORK-KEY-EXPONENT="AW=="
NETWORK-KEY-MODULUS - Required
The modulus of the network key. Is a case sensitive string of
alphanumeric characters: A-Z, a-z, 0-9, plus sign, equal sign
and slash (/), without spaces.
The modulus is a whole decimal number that is made up of a
sequence of bytes, each byte representing 8 bits of information,
with the most significant bit first. The modulus is encoded
using Base64 data encoding (RFC 3548).
For more information about digital signature generation, see 14.
Authenticating the Record.
STG Interactive Frogans Page [33]
FNSL 3.0 Frogans Network System Language May 2004
NETWORK-KEY-VERIFY - Required
The digital signature used to verify the network key. Is a case
sensitive string of alphanumeric characters: A-Z, a-z, 0-9, plus
sign, equal sign and slash (/), without spaces.
The digital signature is a whole decimal number that is made up
of a sequence of bytes, each byte representing 8 bits of
information, with the most significant bit first. The digital
signature is encoded using Base64 data encoding (RFC 3548).
The digital signature is generated using the same process as
that to authenticate frogans records, where the data to be
signed is replaced by the case sensitive name of the frogans
network specified in the NETWORK attribute of the RECORD
element, and where the signature key is the network key. For
more information about digital signature generation, see 14.
Authenticating the Record.
PLAYER-REFERENCE-NETWORK - Required
The name of the player reference network. Is a case sensitive
string of alphanumeric characters: A-Z, a-z, 0-9 and dash,
without spaces. The string cannot start or end with a dash. The
string must contain between 1 and 24 characters.
For more information about player reference networks, see 3.4.
Frogans Player Update.
Examples of accepted values:
PLAYER-REFERENCE-NETWORK="frogans" (main frogans network)
PLAYER-REFERENCE-NETWORK="MyNetwork" (dedicated frogans
network)
PLAYER-REFERENCE-NETWORK="my-network" (dedicated frogans
network)
Examples of refused values:
PLAYER-REFERENCE-NETWORK=""
PLAYER-REFERENCE-NETWORK="my network"
PLAYER-REFERENCE-NETWORK="My_Network"
PLAYER-REFERENCE-NETWORK="my.network"
PLAYER-REFERENCE-NETWORK="-MyNetwork"
PLAYER-REFERENCE-NETWORK="MyNetwork!"
PRIVATE-REFERENCE - Required
Indicates if the player reference network for the frogans
network is a private frogans network.
If the player reference network is a private frogans network,
the FNS servers, as well as the servers hosting the frogans,
STG Interactive Frogans Page [34]
FNSL 3.0 Frogans Network System Language May 2004
are accessed by the Frogans Player using private IP addresses.
Private IPv4 address blocks are (RFC 3330):
- 10.0.0.0/8 (10.0.0.0 to 10.255.255.255)
- 172.16.0.0/12 (172.16.0.0 to 172.31.255.255)
- 192.168.0.0/16 (192.168.0.0 to 192.168.255.255)
If the player reference network is not a private frogans
network, it is considered a public frogans network, and the FNS
servers, as well as the servers hosting the frogans, are
accessed by the Frogans Player using public IP addresses.
If the lower-case name of the player reference network specified
in the PLAYER-REFERENCE-NETWORK attribute of the CERTIFICATE
element equals the lower-case name of the frogans network
specified in the NETWORK attribute of the RECORD element, the
value must be the same as the one specified in the
PRIVATE-NETWORK attribute of the CERTIFICATE element.
* "OFF" specifies that the player reference network is not a
private frogans network.
* "ON" specifies that the player reference network is a
private frogans network.
STATUS-DIRECTORY-HTTP - Required
The URL of a directory on a FNS server of the player reference
network. The directory contains the player reference network's
most recent status record, which is downloaded by the Frogans
Player if the status record for that player reference network
has not been saved in the cache directory or has been removed.
See 4.6. Cache.
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
For more information about status records, see 12. Making a
Status Record.
Examples of accepted values:
STATUS-DIRECTORY-HTTP="http://www.SpecificDomainName.com/"
STATUS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/"
STATUS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
STATUS-DIRECTORY-HTTP="http://1.2.3.4/"
STATUS-DIRECTORY-HTTP="http://1.2.3.4/dir/"
STG Interactive Frogans Page [35]
FNSL 3.0 Frogans Network System Language May 2004
Examples of refused values:
STATUS-DIRECTORY-HTTP=""
STATUS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir"
STATUS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/network.status.play
erplatform.fnsl"
STATUS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
STATUS-DIRECTORY-HTTP=
"https://www.SpecificDomainName.com/dir/"
STATUS-DIRECTORY-HTTP="www.SpecificDomainName.com/dir/"
STATUS-DIRECTORY-HTTP="mailto:Name@SpecificDomainName.com"
STATUS-DIRECTORY-HTTP="frogans*GateName"
STATUS-DIRECTORY-B-HTTP - Required
The URL of a directory on a FNS server of the player reference
network. The directory contains the same status record as the
one found in the primary directory specified in the
STATUS-DIRECTORY-HTTP attribute of the CERTIFICATE element. The
Frogans Player will download the status record from the
directory if it cannot load it from the primary directory (fail-
over process).
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Using the same directory for both the directory and the primary
directory, or hosting them on the same FNS server, will cancel
the efficiency of the fail-over process.
Examples of accepted values:
STATUS-DIRECTORY-B-HTTP="http://www.SpecificDomainName.com/"
STATUS-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/"
STATUS-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
STATUS-DIRECTORY-B-HTTP="http://1.2.3.4/"
STATUS-DIRECTORY-B-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
STATUS-DIRECTORY-B-HTTP=""
STATUS-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir"
STATUS-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/network.status.play
erplatform.fnsl"
STG Interactive Frogans Page [36]
FNSL 3.0 Frogans Network System Language May 2004
STATUS-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
STATUS-DIRECTORY-B-HTTP=
"https://www.SpecificDomainName.com/dir/"
STATUS-DIRECTORY-B-HTTP="www.SpecificDomainName.com/dir/"
STATUS-DIRECTORY-B-HTTP="mailto:Name@SpecificDomainName.com"
STATUS-DIRECTORY-B-HTTP="frogans*GateName"
STG Interactive Frogans Page [37]
FNSL 3.0 Frogans Network System Language May 2004
9. Making a Topology Record - TOPOLOGY and SERVER elements
The TOPOLOGY element defines a topology record, which is used to
reference the lookup servers in the Frogans Network System.
The TOPOLOGY element is placed between the start and end tags of the
RECORD element. The TOPOLOGY element only contains SERVER elements.
All SERVER elements are placed between the start and end tags of the
TOPOLOGY element. The SERVER element does not contain any other
elements.
The lookup servers are referenced in succeeding SERVER elements. The
order in which the SERVER elements appear in the FNSL document is not
relevant.
The lookup servers deliver the frogans network's most recent lookup
records. A lookup record is downloaded by the Frogans Player when the
end-user requests a frogans address, if the lookup record has not
been saved in the cache directory or has been deleted. See 4.6.
Cache.
The Frogans Player uses a load-balancing process, based on the server
capacity specified in the SERVER-CAPACITY attribute of the SERVER
element, to select a lookup server that is referenced in the topology
record.
The Frogans Player will select another available lookup server that
is referenced in the topology record if it cannot load the lookup
record (fail-over process). The Frogans Player will attempt to load
the lookup record on up to five lookup servers.
Hosting the directories of the lookup servers on the same FNS server
will cancel the efficiency of the fail-over process. At least two
different FNS servers should be used, unless the one lookup server
referenced in the topology record is a cluster of servers.
The lookup records must be updated by the frogans network operator
at the same time, on all lookup servers.
For more information about using lookup servers, see 3.2. Frogans
Addressing.
For more information about lookup records, see 10. Making a Lookup
Record.
The TOPOLOGY element can contain between 1 and 32 SERVER elements.
There are no attributes associated with the TOPOLOGY element.
STG Interactive Frogans Page [38]
FNSL 3.0 Frogans Network System Language May 2004
The attributes associated with the SERVER element are:
LOOKUP-DIRECTORY-HTTP - Required
The URL of a directory on the lookup server.
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Examples of accepted values:
LOOKUP-DIRECTORY-HTTP="http://www.SpecificDomainName.com/"
LOOKUP-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/"
LOOKUP-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
LOOKUP-DIRECTORY-HTTP="http://1.2.3.4/"
LOOKUP-DIRECTORY-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
LOOKUP-DIRECTORY-HTTP=""
LOOKUP-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir"
LOOKUP-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/network.lookup.gate
name.extension.fnsl"
LOOKUP-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
LOOKUP-DIRECTORY-HTTP=
"https://www.SpecificDomainName.com/dir/"
LOOKUP-DIRECTORY-HTTP="www.SpecificDomainName.com/dir/"
LOOKUP-DIRECTORY-HTTP="mailto:Name@SpecificDomainName.com"
LOOKUP-DIRECTORY-HTTP="frogans*GateName"
LOOKUP-PROGRAM - Required
Indicates if the lookup records are delivered by the lookup
server through a program.
If the lookup records are not delivered through a program, they
are hosted directly in the directory specified in the
LOOKUP-DIRECTORY-HTTP attribute of the SERVER element.
* "OFF" specifies that the lookup records are not delivered
through a program.
* "ON" specifies that the lookup records are delivered
through a program.
STG Interactive Frogans Page [39]
FNSL 3.0 Frogans Network System Language May 2004
LOOKUP-PROGRAM-NAME - Required
Applicable only if LOOKUP-PROGRAM="ON"
The name of the program on the lookup server. The name can
contain up to 127 characters.
The program is hosted in the directory specified in the
LOOKUP-DIRECTORY-HTTP attribute of the SERVER element.
Examples of accepted values:
LOOKUP-PROGRAM-NAME="solve"
LOOKUP-PROGRAM-NAME="solve.php"
LOOKUP-PROGRAM-NAME="lookup.asp"
LOOKUP-PROGRAM-NAME="lookup.jsp"
LOOKUP-PROGRAM-NAME="lookup-server.cgi"
Examples of refused values:
LOOKUP-PROGRAM-NAME=""
LOOKUP-PROGRAM-NAME="dir/solve.php"
LOOKUP-PROGRAM-NAME="/solve.php"
LOOKUP-PROGRAM-NAME="solve/"
SERVER-CAPACITY - Required
The load capacity of the lookup server. Is a whole decimal
number between 1 and 999999. Signs are not accepted.
For the load-balancing process to function efficiently, the
value chosen must be proportionally related to the load
capacities of the other lookup servers referenced in the same
topology record. For example, the value may be the number of
lookup records that can be delivered by the lookup server per
second.
Examples of accepted values:
SERVER-CAPACITY="40"
SERVER-CAPACITY="2200"
SERVER-CAPACITY="127"
Examples of refused values:
SERVER-CAPACITY=""
SERVER-CAPACITY="0"
SERVER-CAPACITY="-1"
SERVER-CAPACITY="+127"
STG Interactive Frogans Page [40]
FNSL 3.0 Frogans Network System Language May 2004
10. Making a Lookup Record - LOOKUP, HOST and MENU elements
The LOOKUP element defines a lookup record, which is used to open a
frogans on the end-user's system.
The LOOKUP element is placed between the start and end tags of the
RECORD element. The LOOKUP element contains one HOST element, if its
ON-LINE attribute is set to "ON", and contains one MENU element. The
LOOKUP element does not contain any other elements.
The HOST element is placed between the start and end tags of the
LOOKUP element. The HOST element does not contain any other elements.
The MENU element is placed between the start and end tags of the
LOOKUP element. The MENU element does not contain any other elements.
Each frogans published on the frogans network has its own lookup
record which is associated with its frogans address.
The attributes associated with the LOOKUP element are:
ADDRESS - Required
The frogans address that will be displayed on the end-user's
system when the frogans is opened. Is a case sensitive string of
characters in the format 'network*gatename' or
'network*gatename.extension', without spaces.
The value and case of 'network' must be the same as the value
and case specified in the NETWORK attribute of the RECORD
element.
'network' is a case sensitive string of alphanumeric characters:
A-Z, a-z, 0-9 and dash. The string cannot start or end with a
dash. The string must contain between 1 and 24 characters.
'gatename' is a case sensitive string of alphanumeric
characters: A-Z, a-z, 0-9 and dash. The string cannot start or
end with a dash. The string must contain between 2 and 32
characters.
'extension' is a case sensitive string of alphanumeric
characters: A-Z, a-z, 0-9 and dash. The string cannot start or
end with a dash. The string must contain between 3 and 16
characters.
Examples of accepted values:
ADDRESS="frogans*GateName"
ADDRESS="frogans*GateName.Extension"
ADDRESS="frogans*gatename"
STG Interactive Frogans Page [41]
FNSL 3.0 Frogans Network System Language May 2004
ADDRESS="MyNetwork*GateName"
ADDRESS="my-network*GateName.Extension"
Examples of refused values:
ADDRESS=""
ADDRESS="frogans*-GateName"
ADDRESS="frogans*GateName.Extension-"
ADDRESS="frogans*"
ADDRESS="GateName"
ADDRESS="GateName.Extension"
ADDRESS="*GateName"
ADDRESS="frogans * GateName"
ADDRESS="frogans*GateName . Extension"
ADDRESS="frogans*GateName/subdir/"
ADDRESS="frogans*GateName/file.fsdl"
ON-LINE - Required
Indicates if the frogans is on-line.
* "OFF" specifies that the frogans is not on-line.
* "ON" specifies that the frogans is on-line.
ADULT-FILTER - Required
Indicates if the adult filter for the frogans address is
activated. The adult filter must always be activated if the
contents of the frogans, the contents to which the frogans
leads, or the meaning of the frogans address are specifically
destined for adult end-users.
* "OFF" specifies that the adult filter is not activated.
* "ON" specifies that the adult filter is activated.
ADDRESS-VALIDITY - Required
The last day on which the frogans address is valid. Time
reference is UTC (Coordinated Universal Time). Is a string of
eleven characters in the 'dd-mmm-yyyy' date format, without
spaces.
'dd' is a two-digit whole decimal number representing the day of
the month.
'mmm' is a non-case sensitive string of three characters
representing the month of the year: 'Jan' for January, 'Feb' for
February, 'Mar' for March, 'Apr' for April, 'May' for May, 'Jun'
for June, 'Jul' for July, 'Aug' for August, 'Sep' for September,
'Oct' for October, 'Nov' for November or 'Dec' for December.
STG Interactive Frogans Page [42]
FNSL 3.0 Frogans Network System Language May 2004
'yyyy' is a four-digit whole decimal number representing the
year.
Examples of accepted values:
ADDRESS-VALIDITY="01-Jan-2005"
ADDRESS-VALIDITY="01-JAN-2005"
ADDRESS-VALIDITY="01-jan-2005"
Examples of refused values:
ADDRESS-VALIDITY=""
ADDRESS-VALIDITY="01 Jan 2005"
ADDRESS-VALIDITY="01_Jan_2005"
ADDRESS-VALIDITY="01/Jan/2005"
ADDRESS-VALIDITY="1-Jan-2005"
ADDRESS-VALIDITY="01-January-2005"
ADDRESS-VALIDITY="01-01-2005"
ADDRESS-VALIDITY="01-Jan-05"
ADDRESS-VALIDITY="29-Feb-2005"
The attributes associated with the HOST element are:
USER-AUTHENTICATION - Required
The authentication request that is used to let the end-user open
the frogans. The authentication request is completed before the
home slide of the frogans is displayed on the end-user's system.
For more information about the use of authentication requests,
see FSDL specifications version 2.1 (19.1. Requesting
Identifiers from End-users).
* "NO-REQUEST" specifies that no authentication is
requested from the end-user.
* "PID-STANDARD" specifies that a personal identifier (PID)
is requested from the end-user.
* "PID-GROUPED" specifies that a personal identifier (PID)
is requested from the end-user unless certain conditions,
related to other frogans open on the end-user's system,
are met.
* "LOGINPW-STANDARD" specifies that a login and a password
are requested from the end-user.
* "LOGINPW-GROUPED" specifies that a login and a password
are requested from the end-user unless certain conditions,
related to other frogans open on the end-user's system,
are met.
STG Interactive Frogans Page [43]
FNSL 3.0 Frogans Network System Language May 2004
FROGANS-PROTOCOL - Required
The network protocol used by the Frogans Player to communicate
with the server hosting the frogans.
For more information about the use of network protocols, see
FSDL specifications version 2.1 (19.2. Choosing a Network
Protocol).
* "HTTP" specifies network protocol HTTP/1.0
FROGANS-DIRECTORY-HTTP - Required
Applicable only if FROGANS-PROTOCOL="HTTP"
The URL of a directory on a HTTP server hosting the frogans. The
directory is called the frogans root directory.
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 128 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
For more information about the frogans root directory, see FSDL
specifications version 2.1 (3.1. Frogans Root Directory).
For more information about hosting frogans, see FSDL
specifications version 2.1 (19.3. Hosting a Frogans on a HTTP
Server).
Examples of accepted values:
FROGANS-DIRECTORY-HTTP="http://www.SpecificDomainName.com/"
FROGANS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/"
FROGANS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
FROGANS-DIRECTORY-HTTP="http://1.2.3.4/"
FROGANS-DIRECTORY-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
FROGANS-DIRECTORY-HTTP=""
FROGANS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir"
FROGANS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/home.fsdl"
FROGANS-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
FROGANS-DIRECTORY-HTTP=
"https://www.SpecificDomainName.com/dir/"
FROGANS-DIRECTORY-HTTP="www.SpecificDomainName.com/dir/"
STG Interactive Frogans Page [44]
FNSL 3.0 Frogans Network System Language May 2004
FROGANS-DIRECTORY-HTTP="mailto:Name@SpecificDomainName.com"
FROGANS-DIRECTORY-HTTP="frogans*GateName"
FROGANS-HOME-SLIDE - Required
The file name of the frogans home slide in the frogans root
directory. Is a case sensitive string of alphanumeric
characters: A-Z, a-z, 0-9, underscore, dash, dot and slash (/).
The string cannot end with a slash or a dot. The string cannot
contain the sequences '..', './', '/.' and '//'. 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 frogans home slide is located in a sub-directory, the
file name must include the complete file path from the frogans
root directory.
For more information about the frogans root directory, see FSDL
specifications version 2.1 (3.1. Frogans Root Directory).
Examples of accepted values:
FROGANS-HOME-SLIDE="/home.fsdl"
FROGANS-HOME-SLIDE="/home.fsd"
FROGANS-HOME-SLIDE="/home-slide.fsdl"
FROGANS-HOME-SLIDE="/home_slide.fsdl"
FROGANS-HOME-SLIDE="/subdir/home.fsdl"
FROGANS-HOME-SLIDE="/home.php"
FROGANS-HOME-SLIDE="/home.asp"
FROGANS-HOME-SLIDE="/home.jsp"
FROGANS-HOME-SLIDE="/home.cgi"
FROGANS-HOME-SLIDE="/home"
Examples of refused values:
FROGANS-HOME-SLIDE=""
FROGANS-HOME-SLIDE="/"
FROGANS-HOME-SLIDE="home.fsdl"
FROGANS-HOME-SLIDE="/.fsdl"
FROGANS-HOME-SLIDE="/home."
FROGANS-HOME-SLIDE="\home.fsdl"
FROGANS-HOME-SLIDE="./home.fsdl"
FROGANS-HOME-SLIDE="../home.fsdl"
FROGANS-HOME-SLIDE="subdir/home.fsdl"
FROGANS-HOME-SLIDE="/subdir/"
FROGANS-HOME-SLIDE="/subdir//home.fsdl"
FROGANS-HOME-SLIDE="/subdir\home.fsdl"
FROGANS-HOME-SLIDE="/home.fsdl?option=2"
FROGANS-HOME-SLIDE=
"/home.fsdl?option=2&language=Swedish"
STG Interactive Frogans Page [45]
FNSL 3.0 Frogans Network System Language May 2004
FROGANS-HOME-SLIDE="frogans*GateName/home.fsdl"
FROGANS-HOME-SLIDE="http://SpecificDomainName.com/home.fsdl"
FSDL-VERSION - Required
The version of the FSDL specifications used to develop the
frogans.
* "FSDL2.1" : FSDL specifications version 2.1
FSDL-ENCODING - Required
The encoding of the FSDL documents which make up the frogans.
For more information about FSDL document encoding, see FSDL
specifications version 2.1 (3.3. Document Character Set and
Encoding).
* "UTF-8" specifies UTF-8 encoding of ISO 10646/Unicode
(RFC 2279)
* "UTF-16" specifies UTF-16 encoding of ISO 10646/Unicode
(RFC 2781)
The attributes associated with the MENU element are:
SEND-FRIEND - Required
Indicates if the 'Send to a friend...' item is activated by the
Frogans Player in the contextual menu of the frogans.
* "OFF" specifies that the 'Send to a friend...' item is not
activated.
* "ON" specifies that the 'Send to a friend...' item is
activated.
WEBSITE-LINK - Required
Indicates if the 'Related website...' item is activated by the
Frogans Player in the contextual menu of the frogans.
* "OFF" specifies that the 'Related website...' item is not
activated.
* "ON" specifies that the 'Related website...' item is
activated.
STG Interactive Frogans Page [46]
FNSL 3.0 Frogans Network System Language May 2004
WEBSITE-LINK-HTTP - Required
Applicable only if WEBSITE-LINK="ON"
The URL of a Web site which belongs to the frogans editor.
The URL must begin with 'http://' and can contain up to 255
characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Examples of accepted values:
WEBSITE-LINK-HTTP="http://www.SpecificDomainName.com/"
WEBSITE-LINK-HTTP=
"http://www.SpecificDomainName.com/index.htm"
WEBSITE-LINK-HTTP="http://www.SpecificDomainName.com/dir/"
WEBSITE-LINK-HTTP=
"http://www.SpecificDomainName.com/index.php?param=28"
WEBSITE-LINK-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
WEBSITE-LINK-HTTP="http://1.2.3.4/"
WEBSITE-LINK-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
WEBSITE-LINK-HTTP=""
WEBSITE-LINK-HTTP=
"https://www.SpecificDomainName.com/index.htm"
WEBSITE-LINK-HTTP="www.SpecificDomainName.com/index.htm"
WEBSITE-LINK-HTTP="mailto:Name@SpecificDomainName.com"
WEBSITE-LINK-HTTP="frogans*GateName"
FROGANS-FAMILY - Required
The list of the extensions of the frogans addresses which make
up the frogans family of the frogans.
The frogans family is a subset of all frogans addresses that
have the same 'gatename' in the frogans network (see description
of the frogans address format in the ADDRESS attribute of the
LOOKUP element). The frogans family is the same for all frogans
addresses that have the same 'gatename' in the frogans network.
Is a case sensitive, comma separated list of items in the format
'ext' or '!ext', where 'ext' is the extension of a frogans
address in the frogans family. Each extension included in the
list must be different from the others. Spaces are not accepted
except before or after a comma. A maximum of 256 items is
accepted in the list.
If the extension is empty (gate address only), 'ext' is
represented by a dash. Otherwise, 'ext' is a case sensitive
STG Interactive Frogans Page [47]
FNSL 3.0 Frogans Network System Language May 2004
string of alphanumeric characters: A-Z, a-z, 0-9 and dash. The
string cannot start or end with a dash. The string must contain
between 3 and 16 characters.
The exclamation sign must always precede the extension, if the
adult filter of the related frogans address is activated.
See 10. ADULT-FILTER attribute of the LOOKUP element.
The frogans addresses in the frogans family are displayed by the
Frogans Player in the contextual menu of the frogans, in the
order their extensions appear in the list. If the address of
that frogans is included in the frogans family, it is not
displayed.
If the adult filter setting of a frogans address in the frogans
family is modified, the lookup records for all addresses that
have the same 'gatename' in the frogans network must also be
updated.
Examples of accepted values:
FROGANS-FAMILY="" (no items)
FROGANS-FAMILY="MyExtension"
FROGANS-FAMILY="!MyExtension"
FROGANS-FAMILY="MyExtension, MyExtension2"
FROGANS-FAMILY="MyExtension,MyExtension2"
FROGANS-FAMILY="-, MyExtension"
FROGANS-FAMILY="!MyExtension, MyExtension2"
FROGANS-FAMILY="MyExtension, !-, MyExtension2"
Examples of refused values:
FROGANS-FAMILY="MyExtension!"
FROGANS-FAMILY="!!MyExtension"
FROGANS-FAMILY="-MyExtension"
FROGANS-FAMILY="--, MyExtension"
FROGANS-FAMILY="MyExtension MyExtension2"
FROGANS-FAMILY="MyExtension/MyExtension2"
FROGANS-FAMILY="MyExtension,,MyExtension2"
FROGANS-FAMILY="MyExtension&MyExtension2"
FROGANS-GROUP - Required
The list of frogans addresses which make up the frogans group of
the frogans. These frogans addresses are chosen by the frogans
network operator or by the frogans editor.
Is a case sensitive, comma separated list of items in the format
'address' or '!address', where 'address' is a frogans address.
Each frogans address included in the list must be different from
the others. Spaces are not accepted except before or after a
comma. A maximum of 256 items is accepted in the list.
STG Interactive Frogans Page [48]
FNSL 3.0 Frogans Network System Language May 2004
'address' follows the same syntax as specified in the ADDRESS
attribute of the LOOKUP element.
The exclamation sign must always precede the frogans address, if
its adult filter is activated. See 10. ADULT-FILTER attribute of
the LOOKUP element.
The frogans addresses are displayed by the Frogans Player in the
contextual menu of the frogans, in the order the addresses
appear in the list. If the address of that frogans is included
in the frogans group, it is not displayed.
If the adult filter setting of a frogans address is modified,
the lookup records for all frogans addresses that contain this
frogans address in their frogans groups, must also be updated.
Examples of accepted values:
FROGANS-GROUP="" (no items)
FROGANS-GROUP="frogans*GateName"
FROGANS-GROUP="MyNetwork*GateName2"
FROGANS-GROUP="frogans*GateName.Extension"
FROGANS-GROUP="!frogans*GateName"
FROGANS-GROUP="frogans*GateName, MyNetwork*GateName2"
FROGANS-GROUP="frogans*GateName,MyNetwork*GateName2"
FROGANS-GROUP="frogans*GateName, !MyNetwork*GateName2"
Examples of refused values:
FROGANS-GROUP="frogans*GateName!"
FROGANS-GROUP="!!frogans*GateName"
FROGANS-GROUP="frogans*GateName MyNetwork*GateName2"
FROGANS-GROUP="frogans*GateName/MyNetwork*GateName2"
FROGANS-GROUP="frogans*GateName,,MyNetwork*GateName2"
FROGANS-GROUP="frogans*GateName&MyNetwork*GateName2"
HAND-OVER - Required
Applicable only on the main frogans network
Indicates if the 'This frogans address can be yours...' item is
displayed by the Frogans Player in the contextual menu of the
frogans.
This item is a notice to end-users that a hand-over process
exists for the frogans address. Is only applicable for frogans
addresses on the main frogans network. For more information
about the hand-over process, go to frogans.com.
* "OFF" specifies that the 'This frogans address can be
yours...' item is not displayed.
* "ON" specifies that the 'This frogans address can be
yours...' item is displayed.
STG Interactive Frogans Page [49]
FNSL 3.0 Frogans Network System Language May 2004
11. Making an Error Record - ERROR element
The ERROR element defines an error record, which is returned by a
lookup server to indicate a request error.
The ERROR element is placed between the start and end tags of the
RECORD element. The ERROR element does not contain any other
elements.
For more information about using lookup servers, see 3.2. Frogans
Addressing and 15. Going On Line.
The attribute associated with the ERROR element is:
ERROR-CODE - Required
The code number of the error.
Errors are handled by the lookup server in successive order of
their code numbers.
* "700" specifies an error which occurs if the parameters
of the request sent by the Frogans Player to the lookup
server do not conform to the FNSL specifications.
* "701" specifies an error which occurs if the lookup server
cannot identify the identifier of the software sending the
request. The identifier is the request header field
'User-Agent' (See 15. Going On-line).
* "703" specifies an error which occurs if the frogans
address in the request sent by the Frogans Player to the
lookup server belongs to a frogans network that is not
supported.
* "704" specifies an error which occurs if the frogans
address in the request sent by the Frogans Player to the
lookup server does not exist on the frogans network.
STG Interactive Frogans Page [50]
FNSL 3.0 Frogans Network System Language May 2004
12. Making a Status Record - STATUS and PLAYER elements
The STATUS element defines a status record, which lists the different
releases of the Frogans Player for a specific platform, and the
update status of each.
The STATUS element is placed between the start and end tags of the
RECORD element. The STATUS element only contains PLAYER elements.
All PLAYER elements are placed between the start and end tags of the
STATUS element. The PLAYER element does not contain any other
elements.
The different releases of the Frogans Player are listed in succeeding
PLAYER elements, except for the latest release which is specified in
the UPDATE-PLAYER-VERSION attribute of the STATUS element. The order
in which the PLAYER elements appear in the FNSL document is not
relevant.
The STATUS element can contain up to 512 PLAYER elements.
If a release of the Frogans Player is not listed in the status
record, and if its version number is lower than that of the latest
release specified in the UPDATE-PLAYER-VERSION attribute of the
STATUS element, it is considered to be obsolete and must be updated.
When updating the status and update records on the player reference
network, the update record should always be updated first. For more
information about updating the Frogans Player, see 3.4. Frogans
Player Update.
The attributes associated with the STATUS element are:
PLAYER-PLATFORM - Required
The identifier of the platform. Is a lowercase string of
alphanumeric characters: a-z, 0-9, dash, without spaces. The
string must contain between 5 and 16 characters.
Examples of accepted values:
PLAYER-PLATFORM="device1-os4"
PLAYER-PLATFORM="device2-os5"
PLAYER-PLATFORM="device3-os10"
Examples of refused values:
PLAYER-PLATFORM=""
PLAYER-PLATFORM="Device1-os4"
PLAYER-PLATFORM="device1_os4"
PLAYER-PLATFORM="device1/os4"
PLAYER-PLATFORM="device1.os4"
STG Interactive Frogans Page [51]
FNSL 3.0 Frogans Network System Language May 2004
UPDATE-PLAYER-VERSION - Required
The version number of the Frogans Player's latest release for
the platform. Is a string of characters in the 'x.y.z.k' format,
without spaces.
'x' is a whole decimal number between 0 and 65535 representing
the major component of the version number.
'y' is a whole decimal number between 0 and 65535 representing
the minor component of the version number.
'z' is a whole decimal number between 0 and 65535 representing
the sub-version component of the version number.
'k' is a whole decimal number between 0 and 65535 representing
the build component of the version number.
If a status record is saved in the cache directory, the value of
its UPDATE-PLAYER-VERSION attribute can be lower than the
version number of the Frogans Player's latest release available
on the player reference network.
Examples of accepted values:
UPDATE-PLAYER-VERSION="1.1.3.2"
UPDATE-PLAYER-VERSION="2.14.8.35"
UPDATE-PLAYER-VERSION="4.0.2.770"
Examples of refused values:
UPDATE-PLAYER-VERSION=""
UPDATE-PLAYER-VERSION="1. 1.3.2"
UPDATE-PLAYER-VERSION="1..3.2"
UPDATE-PLAYER-VERSION="1.1.3."
UPDATE-PLAYER-VERSION="1.1.3"
UPDATE-PLAYER-VERSION="1.1"
UPDATE-DIRECTORY-HTTP - Required
The URL of a directory on a FNS server of the player reference
network. The directory contains the player reference network's
most recent update record, which is downloaded by the Frogans
Player when the end-user updates the Frogans Player.
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
For more information about update records, see 13. Making an
Update Record.
STG Interactive Frogans Page [52]
FNSL 3.0 Frogans Network System Language May 2004
Examples of accepted values:
UPDATE-DIRECTORY-HTTP="http://www.SpecificDomainName.com/"
UPDATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/"
UPDATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
UPDATE-DIRECTORY-HTTP="http://1.2.3.4/"
UPDATE-DIRECTORY-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
UPDATE-DIRECTORY-HTTP=""
UPDATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir"
UPDATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/network.update.play
erplatform.fnsl"
UPDATE-DIRECTORY-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
UPDATE-DIRECTORY-HTTP=
"https://www.SpecificDomainName.com/dir/"
UPDATE-DIRECTORY-HTTP="www.SpecificDomainName.com/dir/"
UPDATE-DIRECTORY-HTTP="mailto:Name@SpecificDomainName.com"
UPDATE-DIRECTORY-HTTP="frogans*GateName"
UPDATE-DIRECTORY-B-HTTP - Required
The URL of a directory on a FNS server of the player reference
network. The directory contains the same update record as the
one found in the primary directory specified in the
UPDATE-DIRECTORY-HTTP attribute of the STATUS element. The
Frogans Player will download the update record from the
directory if it cannot load it from the primary directory (fail-
over process).
The URL must begin with 'http://' and must end with a slash (/).
It can contain up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL cannot contain a query or a fragment.
Using the same directory for both the directory and the primary
directory, or hosting them on the same FNS server, will cancel
the efficiency of the fail-over process.
Examples of accepted values:
UPDATE-DIRECTORY-B-HTTP="http://www.SpecificDomainName.com/"
UPDATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/"
UPDATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com:81/dir/"
STG Interactive Frogans Page [53]
FNSL 3.0 Frogans Network System Language May 2004
UPDATE-DIRECTORY-B-HTTP="http://1.2.3.4/"
UPDATE-DIRECTORY-B-HTTP="http://1.2.3.4/dir/"
Examples of refused values:
UPDATE-DIRECTORY-B-HTTP=""
UPDATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir"
UPDATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/network.update.play
erplatform.fnsl"
UPDATE-DIRECTORY-B-HTTP=
"http://www.SpecificDomainName.com/dir/?param=28"
UPDATE-DIRECTORY-B-HTTP=
"https://www.SpecificDomainName.com/dir/"
UPDATE-DIRECTORY-B-HTTP="www.SpecificDomainName.com/dir/"
UPDATE-DIRECTORY-B-HTTP="mailto:Name@SpecificDomainName.com"
UPDATE-DIRECTORY-B-HTTP="frogans*GateName"
UPDATE-WEBSITE-INFO - Required
The URL of a Web page belonging to the operator of the player
reference network. The document contains information that the
end-user can consult before updating the Frogans Player.
The URL must begin with 'http://' or 'https://' and can contain
up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL can contain a query, but not a fragment.
Examples of accepted values:
UPDATE-WEBSITE-INFO=
"http://www.SpecificDomainName.com/info.htm"
UPDATE-WEBSITE-INFO=
"http://www.SpecificDomainName.com/info.php"
UPDATE-WEBSITE-INFO="http://www.SpecificDomainName.com/dir/"
UPDATE-WEBSITE-INFO=
"https://www.SpecificDomainName.com/info.htm"
UPDATE-WEBSITE-INFO=
"http://www.SpecificDomainName.com/info.php?param=28"
UPDATE-WEBSITE-INFO=
"http://www.SpecificDomainName.com:81/dir/"
UPDATE-WEBSITE-INFO="http://1.2.3.4/info.htm"
UPDATE-WEBSITE-INFO="http://1.2.3.4/dir/info.htm"
Examples of refused values:
UPDATE-WEBSITE-INFO=""
UPDATE-WEBSITE-INFO="www.SpecificDomainName.com/info.htm"
UPDATE-WEBSITE-INFO="mailto:Name@SpecificDomainName.com"
UPDATE-WEBSITE-INFO="frogans*GateName"
STG Interactive Frogans Page [54]
FNSL 3.0 Frogans Network System Language May 2004
UPDATE-WEBSITE-HELP - Required
The URL of a Web page belonging to the operator of the player
reference network. The document contains information to help the
end-user should an error occur during the update of the Frogans
Player.
The URL must begin with 'http://' or 'https://' and can contain
up to 255 characters.
The host specified in the URL cannot include a user or password
declaration. The URL can contain a query, but not a fragment.
Examples of accepted values:
UPDATE-WEBSITE-HELP=
"http://www.SpecificDomainName.com/help.htm"
UPDATE-WEBSITE-HELP=
"http://www.SpecificDomainName.com/help.php"
UPDATE-WEBSITE-HELP="http://www.SpecificDomainName.com/dir/"
UPDATE-WEBSITE-HELP=
"https://www.SpecificDomainName.com/help.htm"
UPDATE-WEBSITE-HELP=
"http://www.SpecificDomainName.com/help.php?param=28"
UPDATE-WEBSITE-HELP=
"http://www.SpecificDomainName.com:81/dir/"
UPDATE-WEBSITE-HELP="http://1.2.3.4/help.htm"
UPDATE-WEBSITE-HELP="http://1.2.3.4/dir/help.htm"
Examples of refused values:
UPDATE-WEBSITE-HELP=""
UPDATE-WEBSITE-HELP="www.SpecificDomainName.com/help.htm"
UPDATE-WEBSITE-HELP="mailto:Name@SpecificDomainName.com"
UPDATE-WEBSITE-HELP="frogans*GateName"
The attributes associated with the PLAYER element are:
PLAYER-VERSION - Required
The unique version number of the Frogans Player's release for
the platform. Is a string of characters in the 'x.y.z.k' format,
without spaces.
'x' is a whole decimal number between 0 and 65535 representing
the major component of the version number.
'y' is a whole decimal number between 0 and 65535 representing
the minor component of the version number.
'z' is a whole decimal number between 0 and 65535 representing
the sub-version component of the version number.
STG Interactive Frogans Page [55]
FNSL 3.0 Frogans Network System Language May 2004
'k' is a whole decimal number between 0 and 65535 representing
the build component of the version number.
The version number cannot be the same or higher than the version
number specified in the UPDATE-PLAYER-VERSION attribute of the
STATUS element.
Examples of accepted values:
PLAYER-VERSION="1.1.3.2"
PLAYER-VERSION="2.14.8.35"
PLAYER-VERSION="4.0.2.770"
Examples of refused values:
PLAYER-VERSION=""
PLAYER-VERSION="1. 1.3.2"
PLAYER-VERSION="1..3.2"
PLAYER-VERSION="1.1.3."
PLAYER-VERSION="1.1.3"
PLAYER-VERSION="1.1"
SUGGEST-UPDATE - Required
Indicates if end-users using the Frogans Player's release are
to be notified regularly that it should be updated.
* "OFF" specifies that end-users are not to be notified.
* "ON" specifies that end-users are to be notified.
* "DATE" specifies that end-users are to be notified, in
advance of the expiration of that Frogans Player's
release. The expiration date is specified in the
PLAYER-VALIDITY attribute of the PLAYER element.
PLAYER-VALIDITY - Required
Applicable only if SUGGEST-UPDATE="DATE"
The last day on which the Frogans Player's release is valid.
Time reference is UTC (Coordinated Universal Time). Is a string
of eleven characters in the 'dd-mmm-yyyy' date format, without
spaces.
'dd' is a two-digit whole decimal number representing the day of
the month.
'mmm' is a non-case sensitive string of three characters
representing the month of the year: 'Jan' for January, 'Feb' for
February, 'Mar' for March, 'Apr' for April, 'May' for May, 'Jun'
for June, 'Jul' for July, 'Aug' for August, 'Sep' for September,
'Oct' for October, 'Nov' for November or 'Dec' for December.
STG Interactive Frogans Page [56]
FNSL 3.0 Frogans Network System Language May 2004
'yyyy' is a four-digit whole decimal number representing the
year.
Examples of accepted values:
PLAYER-VALIDITY="01-Jan-2005"
PLAYER-VALIDITY="01-JAN-2005"
PLAYER-VALIDITY="01-jan-2005"
Examples of refused values:
PLAYER-VALIDITY=""
PLAYER-VALIDITY="01 Jan 2005"
PLAYER-VALIDITY="01_Jan_2005"
PLAYER-VALIDITY="01/Jan/2005"
PLAYER-VALIDITY="1-Jan-2005"
PLAYER-VALIDITY="01-January-2005"
PLAYER-VALIDITY="01-01-2005"
PLAYER-VALIDITY="01-Jan-05"
PLAYER-VALIDITY="29-Feb-2005"
STG Interactive Frogans Page [57]
FNSL 3.0 Frogans Network System Language May 2004
13. Making an Update Record - UPDATE and BINARY elements
The UPDATE element defines an update record, which contains the
latest binary update of the Frogans Player for a specific platform.
The UPDATE element is placed between the start and end tags of the
RECORD element. The UPDATE element only contains one BINARY element.
The BINARY element is placed between the start and end tags of the
UPDATE element. The BINARY element does not contain any other
elements, just characters.
The representation of the binary update is placed between the start
and end tags of the BINARY element. Is a case sensitive string of
alphanumeric characters: A-Z, a-z, 0-9, plus sign, equal sign and
slash (/), without spaces.
The binary update is a software used to install a release of the
Frogans Player on the end-user's system. The version number of the
binary update must be the same as that of the Frogans Player's
release.
The binary update is compressed using Zlib (RFC 1950) with the
Deflate compression method (RFC 1951), then encoded using Base64 data
encoding (RFC 3548).
There are no attributes associated with the BINARY element.
The attributes associated with the UPDATE element are:
PLAYER-PLATFORM - Required
The identifier of the platform for which the binary update is
destined. Is a lowercase string of alphanumeric characters: a-z,
0-9, dash, without spaces. The string must contain between 5 and
16 characters.
Examples of accepted values:
PLAYER-PLATFORM="device1-os4"
PLAYER-PLATFORM="device2-os5"
PLAYER-PLATFORM="device3-os10"
Examples of refused values:
PLAYER-PLATFORM=""
PLAYER-PLATFORM="Device1-os4"
PLAYER-PLATFORM="device1_os4"
PLAYER-PLATFORM="device1/os4"
PLAYER-PLATFORM="device1.os4"
STG Interactive Frogans Page [58]
FNSL 3.0 Frogans Network System Language May 2004
PLAYER-VERSION - Required
The version number of the Frogans Player's release that is
installed using the binary update. Is a string of characters in
the 'x.y.z.k' format, without spaces.
'x' is a whole decimal number between 0 and 65535 representing
the major component of the version number.
'y' is a whole decimal number between 0 and 65535 representing
the minor component of the version number.
'z' is a whole decimal number between 0 and 65535 representing
the sub-version component of the version number.
'k' is a whole decimal number between 0 and 65535 representing
the build component of the version number.
If the status record is saved in the cache directory, the value
can be higher than the version number of the Frogans Player's
latest release that is specified in the status record.
Examples of accepted values:
PLAYER-VERSION="1.1.3.2"
PLAYER-VERSION="2.14.8.35"
PLAYER-VERSION="4.0.2.770"
Examples of refused values:
PLAYER-VERSION=""
PLAYER-VERSION="1. 1.3.2"
PLAYER-VERSION="1..3.2"
PLAYER-VERSION="1.1.3."
PLAYER-VERSION="1.1.3"
PLAYER-VERSION="1.1"
FILE-NAME - Required
The file name used to save the binary update on the end-user's
system before it is run. Is a case sensitive string of
alphanumeric characters: A-Z, a-z, 0-9, underscore, dash and
dot, without spaces. The string cannot start or end with a dot.
The string cannot contain the sequence '..'. The string must
contain between 5 and 32 characters.
Examples of accepted values:
FILE-NAME="Frogans-Setup"
FILE-NAME="Frogans_Setup"
FILE-NAME="Frogans.Setup"
FILE-NAME="Frogans-Setup.exe"
STG Interactive Frogans Page [59]
FNSL 3.0 Frogans Network System Language May 2004
Examples of refused values:
FILE-NAME=""
FILE-NAME="frogans setup"
FILE-NAME="frogans-setup."
FILE-NAME=".frogans-setup"
FILE-NAME="frogans..setup"
FILE-NAME="frogans/setup"
STG Interactive Frogans Page [60]
FNSL 3.0 Frogans Network System Language May 2004
14. Authenticating the Record - SIGNATURE element
The SIGNATURE element defines a digital signature, which is used to
authenticate the frogans network record.
The SIGNATURE element is placed between the start and end tags of the
FROGANS-FNSL element. Only one SIGNATURE element can be used in the
FNSL document. The SIGNATURE element does not contain any other
elements, just characters.
The representation of the digital signature is placed between the
start and end tags of the SIGNATURE element. Is a case sensitive
string of alphanumeric characters: A-Z, a-z, 0-9, plus sign, equal
sign and slash (/), without spaces.
The digital signature is a whole decimal number that is made up of a
sequence of bytes, each byte representing 8 bits of information, with
the most significant bit first. The digital signature is encoded
using Base64 data encoding (RFC 3548).
The digital signature is generated and verified using the signature
algorithm which is specified in the American National Standard for
Financial Services ANS X9.31-1998 (rDSA).
The root key is used to digitally sign the setup record, the
certificate record, the status record and the update record.
The network key is used to digitally sign the topology record, the
lookup record and the error record.
There is a different network key for each frogans network.
The length of the root key and the network key is 2048 bits. Their
public exponent is odd. The root key and the network key may be made
from random primes, as specified in the NIST Digital Signature
Standard (DSS) FIPS 186.2, instead of strong primes.
The hash function used in the signature algorithm is SHA-1, which is
specified in the American National Standard for Financial Services
ANS X9.30-2-1996 (SHA).
The data to be signed is a sequence of characters containing a
representation of the RECORD element and its attributes. The
representation includes the elements, text characters, comments,
processing instructions and CDATA sections placed between the start
and end tags of the RECORD element, in the order they appear in the
FNSL document. The sequence encoding is UTF-8 (RFC 2279).
Attributes of an element are represented in the order they appear in
the FNSL document. Each attribute is represented in the format
'AttName="AttValue"', where 'AttName' is the name and 'AttValue' is
STG Interactive Frogans Page [61]
FNSL 3.0 Frogans Network System Language May 2004
the value of the attribute. Double quotation marks are used as value
delimiters. There are no spaces before or after the equal sign.
An element representation starts with ''. Otherwise, it is followed by '>', then by the
successive representations of each contained item (element, text
characters, comment, processing instruction and CDATA section), and
ends with '', where 'EleName' is the name of the element.
A comment representation starts with ''. A
processing instruction representation starts with '', where 'PiName' is the name of the processing
instruction. A CDATA section representation starts with ''.
To produce the sequence, the FNSL document must be parsed
successfully. Attribute values and text characters are those returned
by a XML 1.0 processor (including the normalization of white spaces
and the processing of numeric character references and entity
references), where ampersands (&) and less than signs (<) are
replaced by their respective entity references '&' and '<'.
Comments, processing instructions and CDATA sections are those
returned by a XML 1.0 processor.
The digital signature is not sensitive to the type of line breaks in
the FNSL document.
There are no attributes associated with the SIGNATURE element.
STG Interactive Frogans Page [62]
FNSL 3.0 Frogans Network System Language May 2004
15. Going On-line
The frogans network can be established on small private IP networks,
where all services may be centralized on one FNS server, as well as
on large scale networks deployed worldwide, where the services are
distributed on many FNS servers.
The FNS servers may deliver static content only, if no program is
specified for the lookup servers.
End-users may use proxies and firewalls to access the frogans
network. To ensure maximum accessibility by end-users, the FNS
servers, as well as the servers hosting the frogans, should use the
default port (80).
When processing a request on a FNS server, the Frogans Player applies
the following HTTP protocol rules:
- Version: HTTP/1.0 (RFC 1945)
- Default port: 80
- Request method: GET or POST, depending on the type of frogans
network record.
When requesting a setup record, a certificate record, a topology
record, a status record or an update record:
* the method to request the FNSL document is GET.
When requesting a lookup record:
* if no program is specified in the topology record for the
lookup server, the method to request the FNSL document is GET.
* if a program is specified in the topology record for the
lookup server, the method to request the FNSL document is
POST.
- 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.
The value of 'Accept' is: '*/*'
STG Interactive Frogans Page [63]
FNSL 3.0 Frogans Network System Language May 2004
The following request header fields are not sent by the Frogans
Player: 'Date', 'Authorization', 'From', 'If-Modified-Since',
'Referer', 'Accept-Charset', 'Accept-Encoding',
'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'
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.
For information about the data sent by the Frogans Player when
requesting a lookup record, see 3.2. Frogans Addressing.
- 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 by the Frogans Player.
However, when requesting a lookup record on a lookup server
where no program is specified, a status code 404 (Not Found)
will be interpreted by the Frogans Player as a returned error
record whose code number is 704. To avoid miscommunication
between the Frogans Player and the lookup server, which may
occur if the status code 404 is modified by a proxy server, the
lookup server should be programed to return an error record 704
(with the status code 200 or 201) instead of a simple status
code 404.
- 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.
STG Interactive Frogans Page [64]
FNSL 3.0 Frogans Network System Language May 2004
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'.
- Proxy:
The Frogans Player can establish a connection through a proxy
server. Authentication of the end-user on the proxy server is
supported using Basic Access Authentication (RFC 2617).
The Frogans Player can also establish a connection through a
Socks server, version 4, version 4A or version 5 (RFC 1928).
Authentication of the end-user on the Socks server is supported
using Username/Password Authentication (RFC 1929).
- 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.
For more information about the cache directory, see 4.6. Cache.
- Cookies: not applicable
The HTTP State Management Mechanism (RFC 2109 and 2965) is not
supported by the Frogans Player.
- Access Authentication: not applicable
Basic Access Authentication of HTTP/1.0 and the extension of
HTTP known as Digest Access Authentication (RFC 2617) are not
supported by the Frogans Player.
- 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 FNS servers.
Future releases of the FNSL specifications may contain an
encryption mechanism that would be associated with frogans
network record requests.
STG Interactive Frogans Page [65]
FNSL 3.0 Frogans Network System Language May 2004
16. Working with the FNSL
The use of the FNSL specifications document and of the FNSL as a
markup language for operating frogans networks 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.
The limited permissions granted in the following terms and conditions
are perpetual and will not be revoked by STG Interactive or its
successors or assignees.
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 FNSL for anything other
than the creation of FNSL documents for operating frogans networks on
the Internet or on private IP networks according to the FNSL
specifications.
Should any doubt arise about possible uses of the FNSL that have not
been specified under the present terms and conditions, please send
your question to: fnsl-use@frogans.com.
Should any doubt arise about the interpretation of the FNSL
specifications, please send your question to: fnsl@frogans.com.
Questions and answers will be posted on the frogans.com web site in
the "Developers" section to complement the FNSL specifications, or
will be taken into account for future versions of the FNSL
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 FNSL 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 FNSL 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 FNSL 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
STG Interactive Frogans Page [66]
FNSL 3.0 Frogans Network System Language May 2004
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 FNSL SPECIFICATIONS DOCUMENT AND OF THE
FNSL AS A MARKUP LANGUAGE FOR OPERATING FROGANS NETWORKS.
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 FNSL
SPECIFICATIONS DOCUMENT OR THE FNSL AS A MARKUP LANGUAGE FOR
OPERATING FROGANS NETWORKS.
STG Interactive is a "Societe Anonyme" incorporated under French Law
(RCS Paris B 428 738 546), 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 FNSL
specifications document and the FNSL as a markup language for
operating frogans networks shall be governed by French Law and the
Paris courts shall have sole jurisdiction.
16.1. Full Copyright Statement of the FNSL Specifications
Copyright (C) STG Interactive (2000-2004). All Rights Reserved.
Document URL: http://www.frogans.com/en/doc/FNSL30.txt
The FNSL 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 FNSL
specifications document's URL as it is written above and this
paragraph are included in all copies. The contents of the FNSL
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 FNSL specifications document can be freely used to create and
distribute to third parties any derivative works aimed at informing
about or teaching how to operate frogans networks on the Internet
or on private IP networks with the FNSL, 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 FNSL specifications
outlined in the present document and that the copyright mention, the
FNSL specifications document's URL as it is written above and this
paragraph are included in all derivative works and their copies. STG
STG Interactive Frogans Page [67]
FNSL 3.0 Frogans Network System Language May 2004
Interactive disclaims all responsibility for derivative works and
their use by third parties.
16.2. Use of the FNSL by Developers
All developers, both individuals and organizations, can freely use
the FNSL to create FNSL documents for operating frogans networks on
the Internet or on private IP networks, 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 FNSL documents, all the
FNSL specifications outlined in the present document. STG Interactive
disclaims all responsibility for all FNSL documents created by
developers and their use by third parties.
16.3. Use of the FNSL by Publishers of Authoring Tools
All software publishers, both individuals and organizations, can
freely use the FNSL to create and distribute to third parties any
authoring tools to help create FNSL documents for operating frogans
networks on the Internet or on private IP networks, 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 FNSL
specifications outlined in the present document and that the
copyright mention, the FNSL 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.
16.4. Use of the FNSL by Publishers of Server Applications
All software publishers, both individuals and organizations, can
freely use the FNSL to create and distribute to third parties, any
server applications which permit FNSL documents to be delivered
dynamically for operating frogans networks on the Internet or on
private IP networks, 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 FNSL specifications outlined in the present
document and that the copyright mention, the FNSL 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 [68]