2010/6/14 Kaarel Kaljurand <<a href="mailto:kaljurand@gmail.com">kaljurand@gmail.com</a>>:<br>...<br>> Maybe it could already now be a solution for you, i.e. forget about changing<br>> <a href="http://owlfss_owlrdfxml.pl">owlfss_owlrdfxml.pl</a>, and try to connect the output of ACE->OWL/SWRL<br>
> (drs_to_owlswrl) directly to Thea's RDF/XML writer (if such a thing exists).<br><br>I also think that it makes sense to reuse existing tools, and Thea looks good, and I exchanged mails with Vangelis some mounths ago.<br>
<br>However, for the algebraic expressions, the worm in the fruit drs_to_owlswrl, not only in <a href="http://owlfss_owlrdfxml.pl">owlfss_owlrdfxml.pl</a> .<div>More precisely, I updated </div><div>ape/utils/owlswrl/<a href="http://implication_to_swrl.pl">implication_to_swrl.pl</a></div>
<div>so that I-variable/1 predicates are added recursively around DRS/SWRL variables.</div><div><br></div><div>Now the OWL FSS looks good:</div><div><div><font class="Apple-style-span" face="'courier new', monospace"> Consequent(</font></div>
<div><font class="Apple-style-span" face="'courier new', monospace"> description(</font></div><div><font class="Apple-style-span" face="'courier new', monospace"> Class(owl:Thing)</font></div>
<div><font class="Apple-style-span" face="'courier new', monospace"> I-variable(6)</font></div><div><font class="Apple-style-span" face="'courier new', monospace"> )</font></div><div><font class="Apple-style-span" face="'courier new', monospace"> description(</font></div>
<div><font class="Apple-style-span" face="'courier new', monospace"> ObjectProperty(:has-surface)</font></div><div><font class="Apple-style-span" face="'courier new', monospace"> I-variable(1)</font></div>
<div><font class="Apple-style-span" face="'courier new', monospace"> I-variable(6)</font></div><div><font class="Apple-style-span" face="'courier new', monospace"> )</font></div><div><font class="Apple-style-span" face="'courier new', monospace"> builtIn(multiply, I-variable($VAR(6)), I-variable($VAR(2)), I-variable($VAR(4)))</font></div>
<div><font class="Apple-style-span" face="'courier new', monospace"> )</font></div></div><div><br></div><div>I commited all my modifications here on Subversion (same directory structure) :</div><div><a href="http://deductions.svn.sourceforge.net/viewvc/deductions/ape/">http://deductions.svn.sourceforge.net/viewvc/deductions/ape/</a></div>
<div><a href="http://deductions.svn.sourceforge.net/viewvc/deductions/ape/"></a><br><div>This is work in progress; I get an SGML exception while writing the OWL/RDF file.</div><div><br></div><div>I think I'll go on hacking the existing (and brushing my rusted Prolog), while also paving the way with Vangelis for using his tools. I'm not sure at all that his predicates for OWL are similar to ACE's, not to speak about his rule representation.</div>
<div><br></div><div>In issue that is mentionned in ACE articles is that datatype properties are hard to detect.</div><div>In the example mentioned before:</div><div><i>If a n:rectangle R has a n:length L1 and R has a n:length L2 then R v:has-surface S, and S = ( L1 * L2 ) .</i></div>
<div><br></div><div>has-surface is wrongly taken as an ObjectProperty.</div><div>It could however be detected as a numeric datatype Property because of the formula that produces a numeric result.</div><div><br></div><div>
-- <br>Jean-Marc Vanel<br>Consulting, services, training,<br>Rule-based programming, Semantic Web<br><a href="http://jmvanel.free.fr/">http://jmvanel.free.fr/</a><br>+33 (0)6 89 16 29 52 -- +33 (0)1 39 55 58 16<br>( we rarely listen to voice messages, please send a mail instead )<br>
<br></div></div>