Jeff: you raise some interesting points.  Let me try to address them:

>From what I can tell, SMW is modelling itself after a subset of OWL.
This is being done for compatability reasons: if it's modelled after
OWL, then it should be trivial to export it as OWL, allowing other
applications on the web an easier time in accessing your site without
human intervention.

OWL comes in three flavors: OWL Lite, OWL DL, and OWL Full.  At this
point, we can pretty much discount OWL Lite; it isn't doing what it
set out to do.  This leaves us with OWL DL and OWL Full for
consideration.

According to the OWL Guide, "OWL DL supports those users who want the
maximum expressiveness without losing computational completeness (all
entailments are guaranteed to be computed) and decidability (all
computations will finish in finite time) of reasoning systems. OWL DL
includes all OWL language constructs with restrictions such as type
separation (a class can not also be an individual or property, a
property can not also be an individual or class)."

Meanwhile, "OWL Full is meant for users who want maximum
expressiveness and the syntactic freedom of RDF with no computational
guarantees. For example, in OWL Full a class can be treated
simultaneously as a collection of individuals and as an individual in
its own right."

It sounds to me that what you're after is akin to the latter: maximum
expressiveness and syntactic freedom with no computational guarantees.
 As such, enforcing a disjunction between class and individual (e.g.,
restricting classes to the Category namespace and forbidding
individuals from being placed in the Category namespace) comes across
as an artificial and unnecessary distinction.

Meanwhile, I've been approaching this with the idea of ensuring that
OWL DL reasoners will be able to make use of the site.  This means
that SMW has to restrict its semantic capabilities to something that
can be mapped to OWL DL.  In turn, this means maintaining a strict
separation between class and individual.  Separating classes and
individuals by namespace does this rather elegantly, and using the
Category namespace for this purpose has a lot to be said for it - as
long as it isn't done to the exclusion of more traditional uses of
Categories.  In addition, doing this means that you don't need
separate properties to represent class membership and subclassing: if
the Class property is used outside of the Category namespace, it
defines a class/instance relation; if it is used in a Category page,
it defines a class/subclass relation.

_________________
That's not to say that there's no merit in your approach, or that it
would be difficult to implement.  Indeed, all you'd need to do
syntactically would be to add '[[Is a::xyz]]' and '[[Subclass
of::xyz]]' properties that don't assume that xyz is in the Category
namespace.  Semantically, you'd need to map these to rdf:type and
rdfs:subClassOf, respectively; and you'd need to change the RDF import
and export capabilities to be compatible with OWL Full instead of OWL
DL.  This last bit is potentially the biggest hurdle involved, since
it determines which reasoning engines can access the wiki.

-- 
Jonathan "Dataweaver" Lang

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Semediawiki-devel mailing list
Semediawiki-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/semediawiki-devel

Reply via email to