FIPA let spec become domain squatted, which I consider evidence of abandonment. I have put this searchable version online on my blog. FIPA representatives are welcome to appear on the Sunday-morning-in-Europe or Tuesday-evening-in-the-Americas shows to discuss this. The spec is necessary for my fork of the Leonardo system. I submit this page as the new canonical link which will not become domain squatted, please update your organization’s links. I added some markdown annotations in one hand-pass of the document.
Document title
Document number
Document source
FIPA TC Communication
Document status
Standard
Date of this status
2002/12/03
Supersedes
FIPA00003
Contact
Change history
See Informative Annex B — ChangeLog
© 1996-2002 Foundation for Intelligent Physical Agentshttp://www.fipa.org/Geneva, Switzerland
Notice
Use of the technologies described in this specification may infringe patents, copyrights or other intellectual property rights of FIPA Members and non-members. Nothing in this specification should be construed as granting permission to use any of the technologies described. Anyone planning to make use of technology covered by the intellectual property rights of others should first obtain permission from the holder(s) of the rights. FIPA strongly encourages anyone implementing any part of this specification to determine first whether part(s) sought to be implemented are covered by the intellectual property of others, and, if so, to obtain appropriate licenses or other permission from the holder(s) of such intellectual property prior to implementation. This specification is subject to change without notice. Neither FIPA nor any of its Members accept any responsibility whatsoever for damages or liability, direct or consequential, which may result from the use of this specification.
The Foundation for Intelligent Physical Agents (FIPA) is an international organization that is dedicated to promoting the industry of intelligent agents by openly developing specifications supporting interoperability among agents and agent-based applications. This occurs through open collaboration among its member organizations, which are companies and universities that are active in the field of agents. FIPA makes the results of its activities available to all interested parties and intends to contribute its results to the appropriate formal standards bodies where appropriate.
The members of FIPA are individually and collectively committed to open competition in the development of agent-based applications, services and equipment. Membership in FIPA is open to any corporation and individual firm, partnership, governmental body or international organization without restriction. In particular, members are not bound to implement or use specific agent-based standards, recommendations and FIPA specifications by virtue of their participation in FIPA.
The FIPA specifications are developed through direct involvement of the FIPA membership. The status of a specification can be either Preliminary, Experimental, Standard, Deprecated or Obsolete. More detail about the process of specification may be found in the FIPA Document Policy [f-out-00000] and the FIPA Specifications Policy [f-out-00003]. A complete overview of the FIPA specifications and their current status may be found on the FIPA Web site.
FIPA is a non-profit association registered in Geneva, Switzerland. As of June 2002, the 56 members of FIPA represented many countries worldwide. Further information about FIPA as an organization, membership information, FIPA specifications and upcoming meetings may be found on the FIPA Web site at http://www.fipa.org/.
1 Scope
2 Grammar FIPA SL Concrete Syntax
2.1 Lexical Definitions
3 Notes on FIPA SL Semantics
3.1 Grammar Entry Point: FIPA SL Content Expression
3.2 Well-Formed Formulas
3.3 Atomic Formula
3.4 Terms
3.5 Referential Operators
3.5.1 Iota
3.5.2 Any
3.5.3 All
3.6 Functional Terms
3.7 Result Predicate
3.8 Actions and Action Expressions
3.9 Notes on the Grammar Rules
3.10 Representation of Time
4 Reduced Expressivity Subsets of FIPA SL
4.1 FIPA SL0: Minimal Subset
4.2 FIPA SL1: Propositional Form
4.3 FIPA SL2: Decidability Restrictions
5 References
6 Informative Annex A — Syntax and Lexical Notation
7 Informative Annex B — ChangeLog
7.1 2002/11/01 - version H by TC X2S
7.2 2002/12/03 - version I by FIPA Architecture Board
This specification defines a concrete syntax for the FIPA Semantic Language (SL) content language. This syntax and its associated semantics are suggested as a candidate content language for use in conjunction with the FIPA Agent Communication Language (see [FIPA00037]). In particular, the syntax is defined to be a sub-grammar of the very general s-expression syntax.
This content language is denoted by the normative constant fipa-sl in the :language parameter of an ACL message. See Section 6 for an explanation of the used syntactic notation.
Content = "(" ContentExpression+ ")".
ContentExpression = IdentifyingExpression
| ActionExpression
| Proposition.
Proposition = Wff.
Wff = AtomicFormula
| "(" UnaryLogicalOp Wff ")"
| "(" BinaryLogicalOp Wff Wff ")"
| "(" Quantifier Variable Wff ")"
| "(" ModalOp Agent Wff ")"
| "(" ActionOp ActionExpression ")"
| "(" ActionOp ActionExpression Wff ")".
UnaryLogicalOp = "not".
BinaryLogicalOp = "and"
| "or"
| "implies"
| "equiv".
AtomicFormula = PropositionSymbol
| "(" BinaryTermOp TermOrIE TermOrIE ")"
| "(" PredicateSymbol TermOrIE+ ")"
| "true"
| "false".
BinaryTermOp = "="
| "result".
Quantifier = "forall"
| "exists".
ModalOp = "B"
| "U"
| "PG"
| "I".
ActionOp = "feasible"
| "done".
TermOrIE[1] = Term
| IdentifyingExpression.
Term = Variable
| FunctionalTerm
| ActionExpression
| Constant
| Sequence
| Set.
IdentifyingExpression = "(" ReferentialOperator TermOrIE Wff ")".
ReferentialOperator = "iota"
| "any"
| "all".
FunctionalTerm = "(" FunctionSymbol TermOrIE* ")"
| "(" FunctionSymbol Parameter* ")".
Constant = NumericalConstant
| String
| DateTime.
NumericalConstant = Integer
| Float.
Variable = VariableIdentifier.
ActionExpression = "(" "action" Agent TermOrIE ")"
| "(" "|" ActionExpression ActionExpression ")"
| "(" ";" ActionExpression ActionExpression ")".
PropositionSymbol = String.
PredicateSymbol = String.
FunctionSymbol = String.
Agent = TermOrIE.
Sequence = "(" "sequence" TermOrIE* ")".
Set = "(" "set" TermOrIE* ")".
Parameter = ParameterName ParameterValue.
ParameterValue = TermOrIE.
All white space, tabs, carriage returns and line feeds between tokens should be skipped by the lexical analyser. See Section 6 for an explanation of the used notation.
String = Word
| ByteLengthEncodedString
| StringLiteral.
ByteLengthEncodedString = "#" DecimalLiteral+ """ <byte sequence>.
Word = [~ "