Yet Another DAML-Rules ProposalHome | About DAML | Announcements | Roadmap | Site Search |
The basic approach is to encode rules and variables as DAML+OIL instances,
avoiding the need to add additional RDF syntax,
make non-asserted statements, etc.
A rule consists of an if
part and a then
part,
both of which are ordered DAML+OIL lists of Atom
(to support implementations where order is important).
Subclasses of Atom
provide for the following
New readers are advised to read the following pages in order:
rules ontology | rules.n3 | rules.daml (dumpont) (hyperdaml) |
application of rules ontology to gedcom | gedcom-relations.n3 | gedcom-relations.daml (hyperdaml) |
cardinality
for clarity even though we've avoided
doing so in the DAML+OIL spec itself
to avoid circularities in the semantics.
If DAML-Rules ends up as a layer on top of the current
DAML+OIL, this should be fine.
If it ends up in the same layer,
we can remove these constraints if necessary.
Match
don't currently allow variables for
:p
.
We could add a
PMatch
to support this.
(not (match ...))
used in
match.clp.
?
in JESS).
The suggested work-around is to declare as many variables named
ignoren
as are needed.
.daml
suffix in
namespaces because www.daml.org and the current APIs
don't consistently
favor .daml
over .n3
suffices.
I'd prefer not to use the .daml
suffix.
rdf:ID
.
I suggest that we prioritize discussion as follows: