From 8f7ffb50d8deba2809ec55cc4bbd36957faa7e72 Mon Sep 17 00:00:00 2001 From: Chan Le Duc <chan.leduc@univ-paris13.fr> Date: Tue, 16 Jun 2009 14:01:58 +0000 Subject: [PATCH] --Added the operations: find, retrieve, trim, store, load --- plugins/webcontent/lib/weblab.jar | Bin 108165 -> 55529 bytes .../webcontent/OntologyAlignmentImpl.java | 323 ++++++++++++++++-- .../align/plugin/webcontent/WSInterface.java | 190 +++++++++-- .../wsdl/interfaces/OntologyAlignment.wsdl | 225 ++++++++++-- .../interfaces/OntologyAlignmentTypes.xsd | 155 ++++++++- plugins/webcontent/src/wsdl/model/model.xsd | 3 +- 6 files changed, 808 insertions(+), 88 deletions(-) diff --git a/plugins/webcontent/lib/weblab.jar b/plugins/webcontent/lib/weblab.jar index 8fba2ae1f02c9afadd8a1c15ba87f24f999e4509..1bcd0ad907446520b70d98436bdc465405c42741 100644 GIT binary patch literal 55529 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 literal 108165 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	*11*?1=}?m`=+deJ{~8o%@b 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 diff --git a/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/OntologyAlignmentImpl.java b/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/OntologyAlignmentImpl.java index fb80c2a5..c00962e2 100644 --- a/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/OntologyAlignmentImpl.java +++ b/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/OntologyAlignmentImpl.java @@ -1,7 +1,7 @@ /* * $Id$ * - * Copyright (C) INRIA Rh�ne-Alpes, 2007-2008 + * Copyright (C) INRIA Rh�ne-Alpes, 2007-2009 * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published by @@ -26,68 +26,105 @@ import org.weblab_project.core.model.Document; import org.weblab_project.core.model.MediaUnit; import org.weblab_project.services.exception.WebLabException; import org.weblab_project.core.model.text.Text; -import org.weblab_project.services.ontologyalignment.types.ProcessArgs; +import org.weblab_project.services.ontologyalignment.types.MatchArgs; +import org.weblab_project.services.ontologyalignment.types.FindArgs; +import org.weblab_project.services.ontologyalignment.types.RetrieveArgs; +import org.weblab_project.services.ontologyalignment.types.LoadArgs; +import org.weblab_project.services.ontologyalignment.types.StoreArgs; +import org.weblab_project.services.ontologyalignment.types.TrimArgs; import org.weblab_project.services.ontologyalignment.types.AddResourceArgs; import org.weblab_project.services.ontologyalignment.types.AddResourceReturn; -import org.weblab_project.services.ontologyalignment.types.ProcessReturn; +import org.weblab_project.services.ontologyalignment.types.MatchReturn; +import org.weblab_project.services.ontologyalignment.types.FindReturn; +import org.weblab_project.services.ontologyalignment.types.RetrieveReturn; +import org.weblab_project.services.ontologyalignment.types.LoadReturn; +import org.weblab_project.services.ontologyalignment.types.StoreReturn; +import org.weblab_project.services.ontologyalignment.types.TrimReturn; import org.weblab_project.services.ontologyalignment.OntologyAlignment; -import org.weblab_project.services.ontologyalignment.ProcessException; +import org.weblab_project.services.ontologyalignment.MatchException; +import org.weblab_project.services.ontologyalignment.FindException; +import org.weblab_project.services.ontologyalignment.RetrieveException; +import org.weblab_project.services.ontologyalignment.LoadException; +import org.weblab_project.services.ontologyalignment.StoreException; +import org.weblab_project.services.ontologyalignment.TrimException; import org.weblab_project.services.ontologyalignment.AddResourceException; import org.weblab_project.core.model.ontology.Ontology; import org.weblab_project.core.model.Annotation; + +import org.weblab_project.core.model.user.UsageContext; +import fr.inrialpes.exmo.align.parser.AlignmentParser; +import fr.inrialpes.exmo.align.impl.BasicParameters; +import fr.inrialpes.exmo.align.impl.BasicAlignment; +import fr.inrialpes.exmo.align.impl.URIAlignment; +import fr.inrialpes.exmo.align.impl.ObjectAlignment; + -//import fr.inrialpes.exmo.align.plugin.neontk.OnlineAlign; +import org.semanticweb.owl.align.Parameters; +import org.semanticweb.owl.align.Alignment; +import org.semanticweb.owl.align.AlignmentProcess; +import org.semanticweb.owl.align.AlignmentVisitor; +import org.semanticweb.owl.align.AlignmentException; import java.net.URI; +import java.util.List; +import java.io.ByteArrayOutputStream; +import java.io.PrintWriter; +import java.io.StringWriter; +import java.io.BufferedWriter; +import java.io.OutputStreamWriter; + + @WebService(endpointInterface = "org.weblab_project.services.ontologyalignment.OntologyAlignment") public class OntologyAlignmentImpl implements OntologyAlignment { -public ProcessReturn process(ProcessArgs args) throws ProcessException { - -//System.out.println("Alignment Hello"); +public MatchReturn match(MatchArgs args) throws MatchException { String defaultHost = "aserv.inrialpes.fr"; String defaultPort = "80"; -String[] methodList = new String[8]; - -methodList[0] = "fr.inrialpes.exmo.align.impl.method.NameEqAlignment"; -methodList[1] = "fr.inrialpes.exmo.align.impl.method.StringDistAlignment"; -methodList[2] = "fr.inrialpes.exmo.align.impl.method.SMOANameAlignment"; -methodList[3] = "fr.inrialpes.exmo.align.impl.method.SubsDistNameAlignment"; -methodList[4] = "fr.inrialpes.exmo.align.impl.method.StrucSubsDistAlignment"; -methodList[5] = "fr.inrialpes.exmo.align.impl.method.NameAndPropertyAlignment"; -methodList[6] = "fr.inrialpes.exmo.align.impl.method.ClassStructAlignment"; -methodList[7] = "fr.inrialpes.exmo.align.impl.method.EditDistNameAlignment"; +String defaultMethod = "fr.inrialpes.exmo.align.impl.method.EditDistNameAlignment"; + WSInterface onAlign = new WSInterface(defaultPort, defaultHost); -Ontology onto1 = args.getOnto1(); -Ontology onto2 = args.getOnto2(); -String uri1 = onto1.getUri(); -String uri2 = onto2.getUri(); -String matchMethod = methodList[7]; +Ontology onto1 = args.getOnto1(); +Ontology onto2 = args.getOnto2(); +String uri1 = onto1.getUri(); +String uri2 = onto2.getUri(); +UsageContext uc = args.getUsageContext(); + +String matchMethod = uc.getUri(); +String[] methods = onAlign.getMethods(); + +boolean found = false; + +for(int i=0; i < methods.length; i++) { + if ( matchMethod.equals(methods[i]) ) found = true; +} + +if(found) defaultMethod = matchMethod; + String alignURI = null; if (!uri1.startsWith("http://") || !uri2.startsWith("http://") ) { WebLabException ex = new WebLabException(); ex.setErrorMessage("ERROR : Ontology URI."); ex.setErrorId("OntologyAlignment"); - throw new ProcessException("ProcessException : ", ex); + throw new MatchException("MatchException : ", ex); } else { - + alignURI = onAlign.getAlignId( matchMethod, uri1, uri2 ); if(alignURI==null || alignURI.equals("")) { WebLabException ex = new WebLabException(); ex.setErrorMessage("ERROR : Alignment URI."); ex.setErrorId("OntologyAlignment"); - throw new ProcessException("ProcessException : ", ex); + throw new MatchException("MatchException : ", ex); } } -ProcessReturn out = new ProcessReturn(); +MatchReturn out = new MatchReturn(); Annotation annot = new Annotation(); annot.setUri(alignURI); out.setAnnotation(annot); @@ -96,6 +133,238 @@ return out; } +public FindReturn find(FindArgs args) throws FindException { + +String defaultHost = "aserv.inrialpes.fr"; +String defaultPort = "80"; + +WSInterface onAlign = new WSInterface(defaultPort, defaultHost); + +Ontology onto1 = args.getOnto1(); +Ontology onto2 = args.getOnto2(); +String uri1 = onto1.getUri(); +String uri2 = onto2.getUri(); + +if (!uri1.startsWith("http://") || !uri2.startsWith("http://") ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Ontology URI."); + ex.setErrorId("OntologyAlignment"); + throw new FindException("FindException : ", ex); + +} else { + String[] alignUris = onAlign.findAlignForOntos( uri1, uri2 ); + if( alignUris==null || alignUris.length == 0) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Alignment not found."); + ex.setErrorId("OntologyAlignment"); + throw new FindException("FindException : ", ex); + } else { + FindReturn out = new FindReturn(); + List<Annotation> ll = out.getAnnotation(); + for(int i=0; i < alignUris.length; i++) { + Annotation annot = new Annotation(); + annot.setUri(alignUris[i]); + ll.add(annot); + } + return out; + } +} + +} + +public RetrieveReturn retrieve(RetrieveArgs args) throws RetrieveException { + +String defaultHost = "aserv.inrialpes.fr"; +String defaultPort = "80"; + +WSInterface onAlign = new WSInterface(defaultPort, defaultHost); + +Annotation align = args.getAlign(); +String aUri = align.getUri(); +UsageContext uc = args.getUsageContext(); +String method = uc.getUri(); + + +if (!aUri.startsWith("http://") ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Ontology URI."); + ex.setErrorId("OntologyAlignment"); + throw new RetrieveException("RetrieveException : ", ex); + +} else { + String alignContent = onAlign.render( aUri , method); + if( alignContent == null ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : No rendered Alignment."); + ex.setErrorId("OntologyAlignment"); + throw new RetrieveException("RetrieveException : ", ex); + } else { + /* + PrintWriter writer = null; + ByteArrayOutputStream result = new ByteArrayOutputStream(); + + AlignmentParser ap = null; + URIAlignment al = null; + + try { + ap = new AlignmentParser(0); + ap.setEmbedded( true ); + al = (URIAlignment) ap.parse( alignContent ); + } catch (Exception e) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage(" Parsing problem."); + ex.setErrorId("OntologyAlignment"); + throw new RetrieveException("RetrieveException : ", ex); + } + + // Render it + + AlignmentVisitor renderer = null; + // Redirect the output in a String + try { + writer = new PrintWriter ( + new BufferedWriter( + new OutputStreamWriter( result, "UTF-8" )), true); + + Object[] mparams = {(Object) writer }; + java.lang.reflect.Constructor[] rendererConstructors = + Class.forName(method).getConstructors(); + renderer = + (AlignmentVisitor) rendererConstructors[0].newInstance(mparams); + } catch (Exception ex) { + WebLabException e = new WebLabException(); + e.setErrorMessage("Unknown method."); + e.setErrorId("OntologyAlignment"); + throw new RetrieveException("RetrieveException : ", e); + } + + try { + ObjectAlignment obAl = ObjectAlignment.toObjectAlignment( al ); + obAl.render( renderer ); + writer.flush(); + writer.close(); + + } catch (Exception e) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage(" Renderer problem."); + ex.setErrorId("OntologyAlignment"); + throw new RetrieveException("RetrieveException : ", ex); + } + */ + RetrieveReturn out = new RetrieveReturn(); + Annotation annot = new Annotation(); + //String strRes = result.toString(); + //if(strRes == null || strRes.equals("") ) { + if(alignContent == null || alignContent.equals("") ) { + annot.setData("No alignment"); + } else + //annot.setData(strRes); + annot.setData( alignContent ); + + out.setAnnotation(annot); + return out; + } +} + +} + + +public TrimReturn trim(TrimArgs args) throws TrimException { + String defaultHost = "aserv.inrialpes.fr"; + String defaultPort = "80"; + + WSInterface onAlign = new WSInterface(defaultPort, defaultHost); + Annotation th = args.getThreshold(); + + String threshold = th.getData(); + Annotation align = args.getAlign(); + String aUri = align.getUri(); + + if (!aUri.startsWith("http://") ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Alignment URI."); + ex.setErrorId("OntologyAlignment"); + throw new TrimException("TrimException : ", ex); + } + + String resUri = onAlign.trimAlign( aUri, threshold ); + + if (resUri == null || resUri.equals("") ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Trimmed Alignment ."); + ex.setErrorId("OntologyAlignment"); + throw new TrimException("TrimException : ", ex); + } + + TrimReturn out = new TrimReturn(); + Annotation annot = new Annotation(); + annot.setUri( resUri ); + out.setAnnotation(annot); + return out; +} + +public StoreReturn store(StoreArgs args) throws StoreException { + String defaultHost = "aserv.inrialpes.fr"; + String defaultPort = "80"; + + WSInterface onAlign = new WSInterface(defaultPort, defaultHost); + + Annotation align = args.getAlign(); + String aUri = align.getUri(); + + if (!aUri.startsWith("http://") ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Alignment URI."); + ex.setErrorId("OntologyAlignment"); + throw new StoreException("StoreException : ", ex); + } + + String resUri = onAlign.storeAlign( aUri ); + + if (resUri == null || resUri.equals("") ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : Stored Alignment ."); + ex.setErrorId("OntologyAlignment"); + throw new StoreException("StoreException : ", ex); + } + + StoreReturn out = new StoreReturn(); + Annotation annot = new Annotation(); + annot.setUri( resUri ); + out.setAnnotation(annot); + return out; + +} + + +public LoadReturn load(LoadArgs args) throws LoadException { + +String defaultHost = "aserv.inrialpes.fr"; +String defaultPort = "80"; + +WSInterface onAlign = new WSInterface(defaultPort, defaultHost); + +Annotation fileContent = args.getFileContent(); +String content = fileContent.getData(); + +System.out.println("content="+content); + +String alignUri = onAlign.loadStringAsAlignment( content ); +if( alignUri == null ) { + WebLabException ex = new WebLabException(); + ex.setErrorMessage("ERROR : No loaded Alignment."); + ex.setErrorId("OntologyAlignment"); + throw new LoadException("RetrieveException : ", ex); +} + +LoadReturn out = new LoadReturn(); +Annotation annot = new Annotation(); +annot.setUri(alignUri); +out.setAnnotation(annot); + +return out; +} + public AddResourceReturn addResource(AddResourceArgs args) throws AddResourceException { AddResourceReturn out = new AddResourceReturn(); return out; diff --git a/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/WSInterface.java b/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/WSInterface.java index 69a48ccc..d31e45f7 100644 --- a/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/WSInterface.java +++ b/plugins/webcontent/src/fr/inrialpes/exmo/align/plugin/webcontent/WSInterface.java @@ -24,6 +24,7 @@ import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.io.InputStream; +import java.lang.StringBuffer; import java.io.FileInputStream; import java.io.DataOutputStream; @@ -145,8 +146,7 @@ public class WSInterface { Parameters params = new BasicParameters(); params.setParameter( "host", HOST ); - //params.setParameter( "http", PORT ); - //params.setParameter( "wsdl", WSDL ); + params.setParameter( "command","trim"); params.setParameter( "arg1",alignId); params.setParameter( "arg2",thres); @@ -194,8 +194,7 @@ public class WSInterface { Parameters params = new BasicParameters(); params.setParameter( "host", HOST ); - //params.setParameter( "http", PORT ); - //params.setParameter( "wsdl", WSDL ); + params.setParameter( "command","list"); params.setParameter( "arg1","methods"); @@ -236,17 +235,13 @@ public class WSInterface { // Read parameters Parameters params = new BasicParameters(); params.setParameter( "host", HOST ); - //params.setParameter( "http", PORT ); - //params.setParameter( "wsdl", WSDL ); + params.setParameter( "command","find"); params.setParameter( "arg1", onto1); params.setParameter( "arg2", onto2); // Create the SOAP message String message = createMessage( params ); - - //System.out.println("HOST= :"+ HOST + ", PORT= " + PORT + ", Action = "+ SOAPAction); - //System.out.println("Message :"+ message); - + // Send message answer = sendMessage( message, params ); } @@ -265,9 +260,7 @@ public class WSInterface { String[] result = getTagFromSOAP( domMessage, "findResponse/alignmentList/alid" ); - //for(int i=0; i< result.length;i++) System.out.println("aligns for ontos=" + result[i]); - - return result; + return result; } @@ -469,13 +462,6 @@ public class WSInterface { } catch ( Exception ex ) { ex.printStackTrace(); }; - - // Cut SOAP header - - //answer = "<?xml version='1.0' encoding='utf-8' standalone='no'?>" + answer ; - answer = answer.replace("<?xml version='1.0' encoding='utf-8' standalone='no'?>", ""); - - Document domMessage = null; try { domMessage = BUILDER.parse( new ByteArrayInputStream( answer.getBytes()) ); @@ -488,14 +474,55 @@ public class WSInterface { String result[] = getTagFromSOAP( domMessage, "retrieveResponse/result/RDF" ); - - - //System.out.println("RDFAlign="+ result[0]); - + return result[0]; } - + public String render(String alignId, String method) { + + Parameters params = new BasicParameters(); + params.setParameter( "host", HOST ); + //params.setParameter( "http", PORT ); + //params.setParameter( "wsdl", WSDL ); + params.setParameter( "command","retrieve"); + params.setParameter( "arg1", alignId); + params.setParameter( "arg2", method); + + String answer=null; + + try { + // Read parameters + //Parameters params = ws.readParameters( aservArgRetrieve ); + + // Create the SOAP message + String message = createMessage( params ); + + // Send message + answer = sendMessage( message, params ); + if(! connected ) return null; + + + + } catch ( Exception ex ) { ex.printStackTrace(); }; + + //there is a problem when trying to remove SOAP header from message for this case + /* + Document domMessage = null; + try { + domMessage = BUILDER.parse( new ByteArrayInputStream( answer.getBytes()) ); + + } catch ( IOException ioex ) { + ioex.printStackTrace(); + } catch ( SAXException saxex ) { + saxex.printStackTrace(); + } + + + String result[] = getTagFromSOAP( domMessage, "retrieveResponse/result" ); + */ + + return answer; + } public String storeAlign(String alignId) { @@ -508,7 +535,6 @@ public class WSInterface { params.setParameter( "command","store"); params.setParameter( "arg1", alignId); - String answer = null; try { @@ -553,6 +579,101 @@ public class WSInterface { } + public String loadStringAsAlignment( String message ) { + // Create the connection + + byte[] b = message.getBytes(); + + String answer = ""; + // Create HTTP Request + try { + + URLConnection connection = SOAPUrl.openConnection(); + HttpURLConnection httpConn = (HttpURLConnection) connection; + + httpConn.setRequestProperty("SOAPAction","loadRequest"); + httpConn.setRequestMethod( "POST" ); + httpConn.setDoOutput( true ); + httpConn.setDoInput( true ); + + // Don't use a cached version of URL connection. + httpConn.setUseCaches ( false ); + httpConn.setDefaultUseCaches (false); + + //File f = new File("/home/exmo/cleduc/Desktop/align.rdf"); + //FileInputStream fi = new FileInputStream(f); + // set headers and their values. + httpConn.setRequestProperty("Content-Type", + "application/octet-stream"); + httpConn.setRequestProperty("Content-Length", + Long.toString(b.length )); + + // create file stream and write stream to write file data. + + OutputStream os = httpConn.getOutputStream(); + + try { + os.write( b, 0, b.length ); + os.flush(); + os.close(); + } catch (Exception ex) {} + + /* + + try + { + // transfer the file in 4K chunks. + byte[] buffer = new byte[4096]; + //long byteCnt = 0; + int bytes=0; + while (true) + { + bytes = fi.read(buffer); + System.out.println("line1="+ buffer.toString() ); + if (bytes < 0) break; + + os.write( buffer, 0, bytes ); + + } + + os.flush(); + } catch (Exception ex) {} + */ + // Read the response + InputStreamReader isr = new InputStreamReader(httpConn.getInputStream()); + BufferedReader in = new BufferedReader(isr); + + String line; + StringBuffer strBuff = new StringBuffer(); + while ((line = in.readLine()) != null) { + strBuff.append( line + "\n"); + } + if (in != null) in.close(); + answer = strBuff.toString(); + + + } catch (Exception ex) { + connected= false; ex.printStackTrace() ; return null; + } + + connected = true; + + Document domMessage = null; + try { + domMessage = BUILDER.parse( new ByteArrayInputStream( answer.getBytes()) ); + + } catch ( IOException ioex ) { + ioex.printStackTrace(); + } catch ( SAXException saxex ) { + saxex.printStackTrace(); + } + + + String[] result = getTagFromSOAP( domMessage, "loadResponse" ); + + return result[0]; + } + public String[] getTagFromSOAP( Document dom, String tag ){ XPath XPATH = XPathFactory.newInstance().newXPath(); String[] result = null; @@ -590,8 +711,7 @@ public class WSInterface { String nm = stream.toString(); result = new String[1]; result[0] = nm; - //System.out.println("result retrieve="+result[0]); - //System.out.println("no first="+ n.getNodeValue()); + } else { Node nn = (Node)(XPATH.evaluate("/Envelope/Body/" + tag, dom, XPathConstants.NODE)); result = new String[1]; @@ -599,7 +719,7 @@ public class WSInterface { NodeList ns = nn.getChildNodes(); //tag "alid" is third - Node n3 = (Node) ns.item(2); + Node n3 = (Node) ns.item(3); Node nx = n3.getFirstChild(); String nm = nx.getNodeValue(); @@ -645,7 +765,7 @@ public class WSInterface { //usage(); System.exit(-1); } - messageBody = "<uri1>"+uri1+"</uri1><uri2>"+uri2+"</uri2>"; + messageBody = "<url1>"+uri1+"</url1><url2>"+uri2+"</url2>"; } else if ( cmd.equals("match" ) ) { SOAPAction = "matchRequest"; String uri1 = (String)params.getParameter( "arg1" ); @@ -796,10 +916,12 @@ public class WSInterface { BufferedReader in = new BufferedReader(isr); String line; - while ((line = in.readLine()) != null) { - answer += line + "\n"; + StringBuffer strBuff = new StringBuffer(); + while ((line = in.readLine()) != null) { + strBuff.append( line + "\n"); } if (in != null) in.close(); + answer = strBuff.toString(); if(httpConn.HTTP_REQ_TOO_LONG == httpConn.getResponseCode()) System.err.println("Request too long"); @@ -816,7 +938,7 @@ public class WSInterface { public String sendFile( String message, Parameters param ) { // Create the connection - byte[] b = message.getBytes(); + //byte[] b = message.getBytes(); String answer = ""; // Create HTTP Request @@ -835,7 +957,7 @@ public class WSInterface { httpConn.setDefaultUseCaches (false); File f = new File(uploadFile); - FileInputStream fi = new FileInputStream(f); + FileInputStream fi = new FileInputStream(f); // set headers and their values. httpConn.setRequestProperty("Content-Type", "application/octet-stream"); diff --git a/plugins/webcontent/src/wsdl/interfaces/OntologyAlignment.wsdl b/plugins/webcontent/src/wsdl/interfaces/OntologyAlignment.wsdl index b82c42aa..46ce0b9c 100644 --- a/plugins/webcontent/src/wsdl/interfaces/OntologyAlignment.wsdl +++ b/plugins/webcontent/src/wsdl/interfaces/OntologyAlignment.wsdl @@ -16,19 +16,69 @@ schemaLocation="OntologyAlignmentTypes.xsd" /> <xsd:import namespace="http://weblab-project.org/services/exception" - schemaLocation="http://ipcc-projects.org/weblab/core/services/1.0/exception.xsd" /> + schemaLocation="http://ipcc-projects.org/weblab/core/back/services/1.0/exception.xsd" /> </xsd:schema> </types> - <message name="processRequest"> - <part name="args" element="types:processArgs" /> + <message name="matchRequest"> + <part name="args" element="types:matchArgs" /> </message> - <message name="processResponse"> - <part name="return" element="types:processReturn" /> + <message name="matchResponse"> + <part name="return" element="types:matchReturn" /> </message> - <message name="processException"> + <message name="matchException"> <part name="error" element="ex:webLabException" /> + </message> + + <message name="findRequest"> + <part name="args" element="types:findArgs" /> </message> + <message name="findResponse"> + <part name="return" element="types:findReturn" /> + </message> + <message name="findException"> + <part name="error" element="ex:webLabException" /> + </message> + + <message name="retrieveRequest"> + <part name="args" element="types:retrieveArgs" /> + </message> + <message name="retrieveResponse"> + <part name="return" element="types:retrieveReturn" /> + </message> + <message name="retrieveException"> + <part name="error" element="ex:webLabException" /> + </message> + + <message name="trimRequest"> + <part name="args" element="types:trimArgs" /> + </message> + <message name="trimResponse"> + <part name="return" element="types:trimReturn" /> + </message> + <message name="trimException"> + <part name="error" element="ex:webLabException" /> + </message> + + <message name="storeRequest"> + <part name="args" element="types:storeArgs" /> + </message> + <message name="storeResponse"> + <part name="return" element="types:storeReturn" /> + </message> + <message name="storeException"> + <part name="error" element="ex:webLabException" /> + </message> + + <message name="loadRequest"> + <part name="args" element="types:loadArgs" /> + </message> + <message name="loadResponse"> + <part name="return" element="types:loadReturn" /> + </message> + <message name="loadException"> + <part name="error" element="ex:webLabException" /> + </message> <message name="addResourceRequest"> <part name="args" element="types:addResourceArgs" /> @@ -42,25 +92,100 @@ <portType name="OntologyAlignment"> <documentation> - A simple interface for a, ontology alignment. It contains a + A simple interface for an ontology alignment. It contains a method to enable business analyser to process two ontologies, given a usage content; and a method enabling to add some resources to extract the knowledge from. - </documentation> - <operation name="process"> + </documentation> + <operation name="match"> <documentation> Ask to the service to process with its business method. </documentation> - <input name="processInput" message="tns:processRequest" /> - <output name="processOutput" message="tns:processResponse" /> - <fault name="processException" - message="tns:processException"> + <input name="matchInput" message="tns:matchRequest" /> + <output name="matchOutput" message="tns:matchResponse" /> + <fault name="matchException" + message="tns:matchException"> <documentation> To be thrown when an error occurs in the process method of the ontology alignment. </documentation> </fault> - </operation> + </operation> + <operation name="find"> + <documentation> + Ask to the service to process with its business method. + </documentation> + <input name="findInput" message="tns:findRequest" /> + <output name="findOutput" message="tns:findResponse" /> + <fault name="findException" + message="tns:findException"> + <documentation> + To be thrown when an error occurs in the process + method of the ontology alignment. + </documentation> + </fault> + </operation> + + <operation name="retrieve"> + <documentation> + Ask to the service to process with its business method. + </documentation> + <input name="retrieveInput" message="tns:retrieveRequest" /> + <output name="retrieveOutput" message="tns:retrieveResponse" /> + <fault name="retrieveException" + message="tns:retrieveException"> + <documentation> + To be thrown when an error occurs in the process + method of the ontology alignment. + </documentation> + </fault> + </operation> + + <operation name="trim"> + <documentation> + Ask to the service to process with its business method. + </documentation> + <input name="trimInput" message="tns:trimRequest" /> + <output name="trimOutput" message="tns:trimResponse" /> + <fault name="trimException" + message="tns:trimException"> + <documentation> + To be thrown when an error occurs in the process + method of the ontology alignment. + </documentation> + </fault> + </operation> + + <operation name="store"> + <documentation> + Ask to the service to process with its business method. + </documentation> + <input name="storeInput" message="tns:storeRequest" /> + <output name="storeOutput" message="tns:storeResponse" /> + <fault name="storeException" + message="tns:storeException"> + <documentation> + To be thrown when an error occurs in the process + method of the ontology alignment. + </documentation> + </fault> + </operation> + + <operation name="load"> + <documentation> + Ask to the service to process with its business method. + </documentation> + <input name="loadInput" message="tns:loadRequest" /> + <output name="loadOutput" message="tns:loadResponse" /> + <fault name="loadException" + message="tns:loadException"> + <documentation> + To be thrown when an error occurs in the process + method of the ontology alignment. + </documentation> + </fault> + </operation> + <operation name="addResource"> <documentation> Add the resource within a usage context to the service. @@ -83,16 +208,76 @@ type="tns:OntologyAlignment"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" /> - <operation name="process"> - <soap:operation soapAction="process" /> - <input name="processInput"> + <operation name="match"> + <soap:operation soapAction="match" /> + <input name="matchInput"> + <soap:body use="literal" /> + </input> + <output name="matchOutput"> + <soap:body use="literal" /> + </output> + <fault name="matchException"> + <soap:fault name="matchException" use="literal" /> + </fault> + </operation> + <operation name="find"> + <soap:operation soapAction="find" /> + <input name="findInput"> + <soap:body use="literal" /> + </input> + <output name="findOutput"> + <soap:body use="literal" /> + </output> + <fault name="findException"> + <soap:fault name="findException" use="literal" /> + </fault> + </operation> + <operation name="retrieve"> + <soap:operation soapAction="retrieve" /> + <input name="retrieveInput"> + <soap:body use="literal" /> + </input> + <output name="retrieveOutput"> + <soap:body use="literal" /> + </output> + <fault name="retrieveException"> + <soap:fault name="retrieveException" use="literal" /> + </fault> + </operation> + <operation name="trim"> + <soap:operation soapAction="trim" /> + <input name="trimInput"> + <soap:body use="literal" /> + </input> + <output name="trimOutput"> + <soap:body use="literal" /> + </output> + <fault name="trimException"> + <soap:fault name="trimException" use="literal" /> + </fault> + </operation> + <operation name="store"> + <soap:operation soapAction="store" /> + <input name="storeInput"> + <soap:body use="literal" /> + </input> + <output name="storeOutput"> + <soap:body use="literal" /> + </output> + <fault name="storeException"> + <soap:fault name="storeException" use="literal" /> + </fault> + </operation> + <operation name="load"> + <soap:operation soapAction="load" /> + <input name="loadInput"> <soap:body use="literal" /> </input> - <output name="processOutput"> + <output name="loadOutput"> <soap:body use="literal" /> </output> - <fault name="processException"> - <soap:fault name="processException" use="literal" /> + <fault name="loadException"> + <soap:fault name="loadException" use="literal" /> </fault> </operation> <operation name="addResource"> diff --git a/plugins/webcontent/src/wsdl/interfaces/OntologyAlignmentTypes.xsd b/plugins/webcontent/src/wsdl/interfaces/OntologyAlignmentTypes.xsd index 393c7d46..c41abb90 100644 --- a/plugins/webcontent/src/wsdl/interfaces/OntologyAlignmentTypes.xsd +++ b/plugins/webcontent/src/wsdl/interfaces/OntologyAlignmentTypes.xsd @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="UTF-8"?> <!-- Created by EADS DS - IPCC --> <xs:schema xmlns:tns="http://weblab-project.org/services/ontologyalignment/types" - xmlns:model="http://weblab-project.org/core/model/" xmlns:user="http://weblab-project.org/core/model/user" + xmlns:model="http://weblab-project.org/core/model/" xmlns:user="http://weblab-project.org/core/model/user" + xmlns:structure="http://weblab-project.org/core/model/structure" xmlns:ontology="http://weblab-project.org/core/model/ontology" xmlns:xs="http://www.w3.org/2001/XMLSchema" version="1.0" targetNamespace="http://weblab-project.org/services/ontologyalignment/types"> @@ -32,9 +33,9 @@ OntologyEnrichment service. </xs:documentation> </xs:annotation> - <xs:element name="processArgs" type="tns:processArgs" /> - <xs:element name="processReturn" type="tns:processReturn" /> - <xs:complexType name="processArgs"> + <xs:element name="matchArgs" type="tns:matchArgs" /> + <xs:element name="matchReturn" type="tns:matchReturn" /> + <xs:complexType name="matchArgs"> <xs:annotation> <xs:documentation> Wrapper containing the two ontologies to align and the usage @@ -50,7 +51,7 @@ minOccurs="0" maxOccurs="1" /> </xs:sequence> </xs:complexType> - <xs:complexType name="processReturn"> + <xs:complexType name="matchReturn"> <xs:annotation> <xs:documentation> Wrapper containing the computed annotation @@ -60,7 +61,149 @@ <xs:element name="annotation" type="model:annotation" minOccurs="1" maxOccurs="1" /> </xs:sequence> - </xs:complexType> + </xs:complexType> + + <xs:element name="findArgs" type="tns:findArgs" /> + <xs:element name="findReturn" type="tns:findReturn" /> + <xs:complexType name="findArgs"> + <xs:annotation> + <xs:documentation> + Wrapper containing the two ontologies to align and the usage + context to be used. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="onto1" type="ontology:ontology" + minOccurs="0" maxOccurs="1" /> + <xs:element name="onto2" type="ontology:ontology" + minOccurs="0" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="findReturn"> + <xs:annotation> + <xs:documentation> + Wrapper containing the computed annotation + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="annotation" type="model:annotation" + minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="retrieveArgs" type="tns:retrieveArgs" /> + <xs:element name="retrieveReturn" type="tns:retrieveReturn" /> + <xs:complexType name="retrieveArgs"> + <xs:annotation> + <xs:documentation> + Wrapper containing the two ontologies to align and the usage + context to be used. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="usageContext" type="user:usageContext" + minOccurs="0" maxOccurs="1" /> + <xs:element name="align" type="model:annotation" + minOccurs="0" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="retrieveReturn"> + <xs:annotation> + <xs:documentation> + Wrapper containing the computed annotation + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="annotation" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="trimArgs" type="tns:trimArgs" /> + <xs:element name="trimReturn" type="tns:trimReturn" /> + <xs:complexType name="trimArgs"> + <xs:annotation> + <xs:documentation> + Wrapper containing the two ontologies to align and the usage + context to be used. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="threshold" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + <xs:element name="align" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="trimReturn"> + <xs:annotation> + <xs:documentation> + Wrapper containing the computed annotation + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="annotation" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="storeArgs" type="tns:storeArgs" /> + <xs:element name="storeReturn" type="tns:storeReturn" /> + <xs:complexType name="storeArgs"> + <xs:annotation> + <xs:documentation> + Wrapper containing the two ontologies to align and the usage + context to be used. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="align" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="storeReturn"> + <xs:annotation> + <xs:documentation> + Wrapper containing the computed annotation + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="annotation" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:element name="loadArgs" type="tns:loadArgs" /> + <xs:element name="loadReturn" type="tns:loadReturn" /> + <xs:complexType name="loadArgs"> + <xs:annotation> + <xs:documentation> + Wrapper containing the two ontologies to align and the usage + context to be used. + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="fileContent" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + + <xs:complexType name="loadReturn"> + <xs:annotation> + <xs:documentation> + Wrapper containing the computed annotation + </xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="annotation" type="model:annotation" + minOccurs="1" maxOccurs="1" /> + </xs:sequence> + </xs:complexType> + <xs:element name="addResourceArgs" type="tns:addResourceArgs" /> <xs:element name="addResourceReturn" type="tns:addResourceReturn" /> <xs:complexType name="addResourceArgs"> diff --git a/plugins/webcontent/src/wsdl/model/model.xsd b/plugins/webcontent/src/wsdl/model/model.xsd index 8991f27b..55d9103e 100755 --- a/plugins/webcontent/src/wsdl/model/model.xsd +++ b/plugins/webcontent/src/wsdl/model/model.xsd @@ -106,7 +106,8 @@ <xs:complexContent> <xs:extension base="tns:resource"> <xs:sequence> - <xs:element name="data" type="xs:anyType" + <!--<xs:element name="data" type="xs:anyType"--> + <xs:element name="data" type="xs:string" minOccurs="1" maxOccurs="1"> <xs:annotation> <xs:documentation> -- GitLab