Version history: | |
2005-11-09 - |
Version 0.9 |
This glossary describes every tag of RuleML as of version 0.9. It will also be updated with more general terms in the future.
<And><And>Atom</And> is equivalent to Atom.
Attributes: @mapDirection, @mapClosure
(See: connective module)
<arg><Atom>), i.e. any of the following: <Ind>, <Data>, <Var>, <Skolem> or <Reify>.
Attributes: @index (required)
(See: term module)
<Assert><formula> role) is asserted, making an 'implicit <And>' assumption. This allows the separation of declarative content from such procedural performatives. <Assert> corresponds to a <Rulebase> in RuleML 0.87 (and earlier).
Attributes: @mapDirection, @mapClosure
(See: performative module and FOL RuleML)
<Atom><Rel>) is followed by a sequence of zero or more arguments (<arg>). Optional user-defined slots (<slot>) are also permitted before and/or after the arguments. Rest variables (<repo> and <resl>) are also permitted. For example, "John is the father of Mary":
<Atom> <Rel>father</Rel> <Ind>John</Ind> <slot><Ind>daughter</Ind><Ind>Mary</Ind></slot> </Atom>
Attributes: @closure
(See: atom module and holog module)
<body><Implies>) containing the premise(s), also known as the "antecedent" or "if" part of the rule.
(See: connective module)
@card<slot>'s cardinality.
(See: slot module)
@closure(See: connective module)
<Con><Rel>, <Ctor> and <Ind>) of a Hilog term (<Hterm>). It is optionally surrounded by an operator (<op>).
(See: holog module and the SWSL submission to the W3C)
<Cterm><Ctor>) is followed by a sequence of zero or more arguments (<arg>). Optional user-defined slots (<slot>) are also permitted before and/or after the arguments, just like an atom (<Atom>). Rest variables (<repo> and <resl>) are also permitted. For example:
<Cterm> <Ctor>book</Ctor> <Var>title</Var> <Var>author</Var> <Var>table of contents</Var> <Var>chapters</Var> </Cterm>
Attributes: @type
(See: cterm module)
<Ctor><Cterm>). It is optionally surrounded by an operator (<op>).
Attributes: @uri
(See: cterm module)
<Data><Data xsi:type="xs:dateTime">2002-10-10T17:00:00Z</Data>is valid (according to the dateTime datatype), but the following is not:
<Data xsi:type="xs:dateTime">tomorrow</Data>Note, however, that <Data>tomorrow</Data> is valid because no built-in datatype is given.
(See: term module)
<declare><Var>) declared within a quantifier (<Forall> or <Exists>).
(See: quantifier module)
<degree>(See: atom module) and Fuzzy RuleML
@direction<Implies>) inferencing. It has a neutral default value of "bidirectional". Other allowed values are "forward" and "forward".
(See: connective module)
<Equal><Nano> and may be optionally surrounded by a side (<side>) role. For example, "factorial(0)=1" may be equivalently represented in the following two ways:
<Equal>
<Nano>
<Fun>fac</Fun>
<Data xsi:type="xs:int">0</Data>
</Nano>
<Data xsi:type="xs:int">1</Data>
</Equal>
<Equal>
<side>
<Nano>
<Fun>fac</Fun>
<Data xsi:type="xs:int">0</Data>
</Nano>
</side>
<side>
<Data xsi:type="xs:int">1</Data>
</side>
</Equal>
(See: equality module)
<Equivalent><Implies>). It consists of a pair of (optionally skipped) <torso> roles. For example, "A person owning an object is equivalent to an object belonging to a person":
<Equivalent>
<torso>
<Atom>
<Rel>own</Rel>
<Var>person</Var>
<Var>object</Var>
</Atom>
</torso>
<torso>
<Atom>
<Rel>belongs</Rel>
<Var>object</Var>
<Var>person</Var>
</Atom>
</torso>
</Equivalent>
Attributes: @closure
(See: connective module)
<Exists><Var>), each optionally surrounded by a <declare> role, followed by a logical formula (optionally surrounded by a <formula> role).
(See: quantifier module)
<Forall><Var>), each optionally surrounded by a <declare> role, followed by a logical formula (optionally surrounded by a <formula> role).
(See: quantifier module)
<formula><And>) or disjunctive (<Or>) expression, quantifier (<Forall> or <Exists>), or performative (<Assert>, <Query> or <Protect>).
(See: connective module and quantifier module)
<Fun><Nano>. It is optionally surrounded by an operator (<op>).
Attributes: @uri
(See: equality module)
<Get>(See: frame module, and the SWSL submission to the W3C)
<head><Implies>) containing the conclusion, also known as the "consequent" or "then" part of the rule.
(See: connective module)
<Hterm><Atom> and <Cterm>.
(See: holog module, and the SWSL submission to the W3C)
<Implies><head>) followed by a premise role (<body>), or, equivalently (since roles constitute unordered elements), a premise role followed by a conclusion role. For example, "The discount for a customer buying a product is 5.0 percent if the customer is premium and the product is regular":
<Implies>
<head>
<Atom>
<Rel>discount</Rel>
<Var>customer</Var>
<Var>product</Var>
<Ind>5.0 percent</Ind>
</Atom>
</head>
<body>
<And>
<Atom>
<Rel>premium</Rel>
<Var>customer</Var>
</Atom>
<Atom>
<Rel>regular</Rel>
<Var>product</Var>
</Atom>
</And>
</body>
</Implies>
Alternatively, the roles may be skipped, in which case the premise comes first followed by the conclusion as suggested by the element name 'Implies' (since the body of a rule implies the head, not vice versa). Using the same example, the order changes:
<Implies>
<And>
<Atom>
<Rel>premium</Rel>
<Var>customer</Var>
</Atom>
<Atom>
<Rel>regular</Rel>
<Var>product</Var>
</Atom>
</And>
<Atom>
<Rel>discount</Rel>
<Var>customer</Var>
<Var>product</Var>
<Ind>5.0 percent</Ind>
</Atom>
</Implies>
Attributes: @closure, @direction, @kind
(See: connective module)
<Ind>(See: term module)
@index<arg>) within a logical atom (<Atom>).
(See: term module)
<InstanceOf>(See: frame module, and the SWSL submission to the W3C)
<Integrity>
<Integrity>
<Neg>
<And>
<Atom>
<Rel>gold</Rel>
<Var>object</Var>
</Atom>
<Atom>
<Rel>rusty</Rel>
<Var>object</Var>
</Atom>
</And>
</Neg>
</Integrity>
Attributes: @closure, @direction
(See: connective module)
@kind<Implies>). Allowed values are "fo", which stands for First-Order (classical) implication (the default), and "lp", which stands for Logic Programming implication.
(See: connective module)
@mapClosure(See: connective module)
@mapDirection<Implies>) inferencing of elements falling within its scope (i.e. all child elements). See attribute mapping for more details. This attribute has a neutral default value of "bidirectional". Other allowed values are "forward" and "backward".
(See: connective module)
@maxCard<slot>'s maximum cardinality.
(See: slot module)
@minCard<slot>'s minimum cardinality.
(See: slot module)
<Naf><Atom>) (i.e. "weak" negation or negation as failure). The negated atom may be optionally surrounded by a <weak> role.
(See: naf module)
<Nano><Equal>) of the form "f(...)" where f is a function name. The function name (<Fun>) is followed by a sequence of zero or more flat (i.e. non-<Nano>) arguments (<arg>), much like complex terms.
(See: equality module)
<Neg><Atom>) (i.e. classical or "strong" negation). The negated atom may be optionally surrounded by a <strong> role.
(See: neg module)
<oid><Ind>, <Rel>, <Ctor>, etc.).
(See: desc module)
<op><Rel>) of an atom (<Atom>), a constructor (<Ctor>) of a complex term (<Cterm>), a function name (<Fun>) of a <Nano>, or a neutralized constant (<Con>) of a Hilog term (<Hterm>).
(See: atom module, cterm module, equality module, and holog module)
<Or><Or>Atom</Or> is equivalent to Atom.
Attributes: @closure
(See: connective module)
<Plex><arg>) and/or (unordered) user-defined slots (<slot>), identical to a complex term (<Cterm>) except not having a user-specified constructor (equivalent to having a system-specified constructor 'Plex'). Rest variables (<repo> and <resl>) are also permitted. For example:
<Plex> <Var>title</Var> <Var>author</Var> <Var>table of contents</Var> <Var>chapters</Var> </Plex>
(See: cterm module)
<Protect><formula> role) is protected, making an 'implicit <And>' assumption. This allows the separation of declarative content from such procedural performatives.
Attributes: @mapDirection, @mapClosure
(See: performative module and FOL RuleML)
<Query><formula> role) is queried, making an 'implicit <And>' assumption. This allows the separation of declarative content from such procedural performatives.
Attributes: @closure
(See: performative module and FOL RuleML)
<Reify>(See: term module)
<Rel><Atom>). It is optionally surrounded by an operator (<op>).
Attributes: @uri
(See: atom module)
<repo><Atom>s, <Cterm>s and <Plex>s.
(See: rest module)
<resl><Atom>s, <Cterm>s and <Plex>s.
(See: rest module)
<RuleML><Assert>, <Query> or <Protect>), making an 'implicitly sequential' assumption.
(See: performative module)
<Set>t[m -> {v1,...,vk}].
(See: frame module, and the SWSL submission to the W3C)
<side><Equal>). This role may contain anything a regular argument (<arg>) can or a <Nano>.
(See: equational module)
<Signature>t[m => v]
(See: frame module, and the SWSL submission to the W3C)
<Skolem>Attributes: @type
(See: term module, and the Integrating Positional and Slotted Knowledge on the Semantic Web slides)
<slot><slot> <Ind>color</Ind> <Ind>blue</Ind> </slot>
Attributes: @weight, @card, @minCard or @maxCard (depending on context)
(See: slot module
<SlotProd>(See: frame module, and the SWSL submission to the W3C)
<strong><Neg>).
(See: neg module)
<SubclassOf>(See: frame module, and the SWSL submission to the W3C)
<torso><Equivalent>) combining the asymmetric <head> and <body>.
(See: connective module)
@type(See: term module)
@uri(See: uri module)
<Var>Attributes: @type
(See: term module)
<warden><Integrity>).
(See: performative module)
<weak><Naf>).
(See: naf module)
@weight<slot>'s relative weight.
(See: slot module)
Site Contact:
Harold Boley.
Page Version: 2006-05-02
"Practice what you preach": XML source of this homepage at index.xml (index.xml.txt);
transformed to HTML via the adaptation of Michael Sintek's SliML XSLT stylesheet at homepage.xsl (View | Page Source)