Thanks! Beer and java go well together! (01)
Duane (02)
On 1/28/08 5:25 PM, "rick@xxxxxxxxxxxxxx" <rick@xxxxxxxxxxxxxx> wrote: (03)
> You can git 'em free, here ...
>
> http://ksl.stanford.edu/software/JTP/
>
> Whose says there's no free lunch, or beer ...
>
> Duane Nickull wrote:
>> Where can I download the jtp jars? Are they free?
>>
>> D
>>
>>
>> On 1/28/08 4:19 PM, "rick@xxxxxxxxxxxxxx" <rick@xxxxxxxxxxxxxx> wrote:
>>
>>> Pat:
>>>
>>> See below for an EJB using JTP with the OWLReasoningContext and the
>>> KIF2CNF parser. This has never been validated, it just builds on a
>>> snippet from the JTP documentation. Feel free to call if you want to
>>> chat ...
>>>
>>> Patrick Cassidy wrote:
>>>> Does anyone have on hand a functioning ontology translator to go from OWL
>>>> to KIF or some other FOL format?
>>>
>>> /**
>>> * @(#) TrustProviderProxyBean.java
>>> * @author <a href:mailto="rick@xxxxxxxxxxxxxx">Rick Murphy</a>
>>> * @version 0.1
>>> * @see <a href="http://www.rickmurphy.org/cps-license.html">Citizen
>>> Privacy Service License</a>
>>> */
>>>
>>> package org.rickmurphy.pep;
>>>
>>> import java.io.InputStream;
>>> import java.io.BufferedReader;
>>> import java.io.InputStreamReader;
>>> import java.io.IOException;
>>>
>>> import java.net.URL;
>>> import java.net.MalformedURLException;
>>>
>>> import java.util.Iterator;
>>> import java.util.Map;
>>> import java.util.HashMap;
>>>
>>> import javax.ejb.SessionBean;
>>> import javax.ejb.SessionContext;
>>> import javax.ejb.EJBLocalHome;
>>> import javax.ejb.EJBLocalObject;
>>>
>>> import jtp.ReasoningException;
>>> import jtp.ReasoningStep;
>>> import jtp.ReasoningStepIterator;
>>>
>>> import jtp.context.owl.OWLReasoningContext;
>>>
>>> import jtp.fol.kif.KIF2CNF;
>>>
>>> import jtp.fol.parser.ParserBasedTranslator;
>>>
>>> import jtp.frame.vc.Goal;
>>>
>>> import jtp.modelim.AskingQueryProcessor;
>>>
>>> import jtp.ui.RDFQueryUtils;
>>>
>>> import com.hp.hpl.jena.rdf.model.Model;
>>> import com.hp.hpl.jena.rdf.model.ModelFactory;
>>>
>>> /**
>>> *
>>> */
>>> public class TrustProviderProxyBean implements
>>> TrustProviderProxy,SessionBean{
>>>
>>> private KIF2CNF kifParser;
>>> private OWLReasoningContext context;
>>>
>>> /**
>>> * @param goal
>>> * @return boolean
>>> * @throws ReasoningException
>>> */
>>> public boolean challenge(Goal goal) throws ReasoningException{
>>>
>>> AskingQueryProcessor queryProcessor = new AskingQueryProcessor();
>>>
>>> queryProcessor.setTranslator((ParserBasedTranslator)kifParser.createTranslat
>>> or
>>> ());
>>> context.add(queryProcessor);
>>>
>>> return queryProcessor.acceptable(goal);
>>>
>>> }//challenge
>>>
>>> /**
>>> * @param goal
>>> * @return ReasoningStepIterator
>>> * @throws ReasoningException
>>> */
>>> public ReasoningStepIterator enforce(Goal goal) throws
>>> ReasoningException{
>>>
>>> ReasoningStepIterator iterator = context.ask(goal.toString());
>>>
>>> ReasoningStep step = null;
>>>
>>> while((step = iterator.next()) != null){
>>> step = iterator.next();
>>> //System.out.println("got step: " + step);
>>> }
>>>
>>> //persist and return provenance
>>> TrustProviderDAO dao = new TrustProviderDAO();
>>>
>>> return iterator;
>>>
>>> }//enforce
>>>
>>> /**
>>> * @throws CreateException
>>> * @throws ReasoningException
>>> * @throws IOException
>>> * @throws MalformedURLException
>>> */
>>> public void ejbCreate() throws
>>> MalformedURLException,IOException,ReasoningException{
>>>
>>> kifParser = new KIF2CNF();
>>>
>>> kifParser.setCaseSensitiveSymbols(true);
>>> kifParser.addNamespaceMapping("owl", "http://www.w3.org/2002/07/owl#");
>>> kifParser.addNamespaceMapping("daml",
>>> "http://www.daml.org/2001/03/daml+oil#");
>>> kifParser.addNamespaceMapping("rdf",
>>> "http://www.w3.org/1999/02/22-rdf-syntax-ns#");
>>> kifParser.addNamespaceMapping("rdfs",
>>> "http://www.w3.org/2000/01/rdf-schema#");
>>>
>>> context = new OWLReasoningContext();
>>> context.setUp();
>>>
>>> Model model = ModelFactory.createDefaultModel();
>>>
>>> URL pubLocURL = new URL("http://localhost/kb");
>>> model.read(new BufferedReader(new InputStreamReader(new
>>> URL("http://www.osera.gov/privacy.owl").openStream())),
>>> pubLocURL.toString());
>>>
>>> ((OWLReasoningContext)context).loadRDFKB(model, pubLocURL);
>>>
>>> HashMap nsToUriMap = new HashMap();
>>> RDFQueryUtils.addNamespaceMappingsFromKb(pubLocURL.toString(),
>>> model, nsToUriMap);
>>> for (Iterator it = nsToUriMap.entrySet().iterator(); it.hasNext();){
>>> Map.Entry ent = (Map.Entry)it.next();
>>>
>>> kifParser.addNamespaceMapping((String)ent.getKey(),(String)ent.getValue());
>>> }
>>> context.add(kifParser);
>>>
>>> }//ejbCreate
>>>
>>> /**
>>> * @param sessioncontext
>>> */
>>> public void setSessionContext( SessionContext sessioncontext
>>> ){}//setSessionContext
>>>
>>> /**
>>> *
>>> */
>>> public void ejbRemove( ){}//ejbRemove
>>>
>>> /**
>>> *
>>> */
>>> public void ejbPassivate( ){}//ejbPassivate
>>>
>>> /**
>>> *
>>> */
>>> public void ejbActivate( ){}//ejbActivate
>>>
>>> /**
>>> *
>>> */
>>> public void remove( ){}//remove
>>>
>>> /**
>>> * @param localObject
>>> * @return boolean
>>> */
>>> public boolean isIdentical(EJBLocalObject localObject){ return
>>> false;}//isIdentical
>>>
>>> /**
>>> * @return EJBLocalHome
>>> */
>>> public EJBLocalHome getEJBLocalHome(){return null;}//getEJBLocalHome
>>>
>>> /**
>>> * @return Object
>>> */
>>> public Object getPrimaryKey(){return null;}//getPrimaryKey
>>>
>>> }//TrustProviderProxyBean
>>>
>>>
>>>> Pat
>>>>
>>>> Patrick Cassidy
>>>> MICRA, Inc.
>>>> 908-561-3416
>>>> cell: 908-565-4053
>>>> cassidy@xxxxxxxxx
>>>>
>>>>
>>>>
>>>> _________________________________________________________________
>>>> Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
>>>> Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
>>>> Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
>>>> Shared Files: http://ontolog.cim3.net/file/
>>>> Community Wiki: http://ontolog.cim3.net/wiki/
>>>> To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
>>>>
>>>>
>>>>
>>
> (04)
--
**********************************************************************
"Speaking only for myself"
Senior Technical Evangelist - Adobe Systems, Inc.
Blog - http://technoracle.blogspot.com
Community Music - http://www.mix2r.com
My Band - http://www.myspace.com/22ndcentury
Adobe MAX 2008 - http://technoracle.blogspot.com/2007/08/adobe-max-2008.html
********************************************************************** (05)
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Config: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (06)
|