view OPPL/oppl.xml @ 17:c9e01f86b07c draft

New tool added for merging imported ontologies (GalaxyOWLAPI and README changed and test ontologies added accordingly). Memory settings changed in all the tools XML files
author Mikel Egana Aranguren <mikel-egana-aranguren@toolshed.g2.bx.psu.edu>
date Mon, 20 Aug 2012 11:39:56 +0200
parents 68c4ae500a13
children d3616fac4ca5
line wrap: on
line source

<tool id="oppl" name="Execute an OPPL file against an ontology" version="1.0.8">
	<description>It executes an OPPL script against the input ontology and generates a new ontology with the changes described in the OPPL script</description>

	<!-- Galaxy is not happy with OPPL throwing info into stderr, and I have redirected stderr to /dev/null, which is a bad solution since OPPL galaxy does not inform properly when it fails -->
	<!-- More info on the stderr issue: http://wiki.g2.bx.psu.edu/Future/Job%20Failure%20When%20stderr -->
	<!-- Testing with wrapper.sh but no success so far -->
	
	
	
	<!-- DEFAULT SETTINGS -->
	
	<!-- For big ontologies I use -Xmx3000M -Xms250M -DentityExpansionLimit=1000000000 If that's too much for your machine simply delete or modify at will, but since Galaxy is usually used in a server setting it makes sense to use a big chunk of memory -->

	<command>
		java -Xmx3000M -Xms250M -DentityExpansionLimit=1000000000 -jar ${__tool_data_path__}/shared/jars/oppl_galaxy.jar $input $reasoner $OPPL $format > $output 2>/dev/null
	</command>
	
	
	
	<!-- FACT++ -->
	
	<!-- If you are planning to use FaCT++ you have to uncomment bellow (And comment the default settings above) and replace the -Djava.library.path with the appropiate JNI library path for your platform:FaCT++-linux-v1.5.2/64bit, FaCT++-linux-v1.5.2/32bit, FaCT++-OSX-v1.5.2/64bit, ...... -->
	<!-- Using this setting doesn't upset the rest of the reasoners so you may as well leave it on if you plan to switch between FaCT++, Pellet and HermiT -->
	
	<!--<command>
		java -Djava.library.path=${__tool_data_path__}/shared/jars/FaCT++-linux-v1.5.2/64bit -Xmx3000M -Xms250M -DentityExpansionLimit=1000000000 -jar ${__tool_data_path__}/shared/jars/oppl_galaxy.jar $input $reasoner $OPPL $format > $output 2>/dev/null
	</commadn>-->

	
	
	
	<!-- DEBUGGING -->
	
	<!-- For debugging simply remove 2>/dev/null Or uncomment bellow (And comment the default settings above). It will fail always (Due to OPPL messages) but at least it will be informative -->

	<!--<command>
		java -Xmx3000M -Xms250M -DentityExpansionLimit=1000000000 -jar ${__tool_data_path__}/shared/jars/oppl_galaxy.jar $input $reasoner $OPPL $format > $output
	</command>-->
	
	
	

	<inputs>
		<param name="input" type="data" label="Input ontology file"/>
		<param name="reasoner" type="select" label="Choose reasoner">
			<option value="Pellet" selected="true">Pellet</option>
			<option value="HermiT">HermiT</option>
			<option value="FaCTPlusPlus">FaCT++</option>
		</param>
		<param format="text" name="OPPL" type="data" label="OPPL file"/>
		<param name="format" type="select" label="Choose ontology output format">
			<option value="OWL" selected="true">OWL</option>
			<option value="OBO">OBO</option>
		</param>
	</inputs>
	<outputs>
		<data format="text" name="output" />
	</outputs>
	<!--<tests>
		<test>
			<param name="input" value="test.owl"/>
			<param name="OPPL" value="test.oppl"/>
			<param name="format" value="OWL"/>
			<param name="reasoner" value="Pellet"/>
			<output name="out_file" file="test_new.owl"/>	
		</test>
	</tests>-->
	<help>

**About OPPL-Galaxy**

  OPPL-Galaxy can be used to execute an OPPL script against an ontology, generating a new ontology. OPPL (Ontology Pre Processor Language) is a high level scripting language, based in the Manchester OWL Syntax, to automate the manipulation of an ontology. An OPPL script (See test.oppl) defines a query to be performed against the ontology, and some actions (Adding or removing axioms) that affect the entities that will be retrieved. Those entities can be named or defined by a variable. OPPL is a powerful method for defining and executing modelling patterns that are repeated in an ontology, saving time and efforts.  

**Formats**

  OPPL-Galaxy uses the OWL API, and therefore it can load any ontology format that such API is able to load: OBO flat file, OWL (RDF/XML, OWL/XML, Functional, Manchester), turtle, and KRSS. The available output formats are OBO flat file and OWL (RDF/XML).

**Usage**

  An ontology and an OPPL file are needed (test.owl and test.oppl can be used as samples, both available in the bundle). Load both with Get Data >> Upload File from your computer, or redirect from another Galaxy tool.

  Then execute the OPPL file against the OWL file with Ontology Pre Processor Language >> Execute an OPPL file against an OWL file. A new output ontology will be generated.

  In case the loaded ontology includes OWL imports, OPPL-Galaxy will try to resolve them. 

  The output ontology can be OBO or OWL (RDF/XML).
   
  The reasoner can be Pellet, HermiT FaCT++. Sometimes, if an execution fails it can be fixed by using a different reasoner. 

**More information**

  Galaxy public instances with OPPL-Galaxy pre-installed:
  
  http://sele.inf.um.es:8080/
  
  http://linkeddata2.dia.fi.upm.es:8080
  
  OPPL-Galaxy Examples: 
  
  http://miuras.inf.um.es/OPPL-Galaxy/
  
  OPPL examples:
  
  http://oppl2.sourceforge.net/taggedexamples/
  
  Links of interest:

  http://oppl.sf.net/

  http://owlapi.sourceforge.net/

  http://www.w3.org/TR/owl2-manchester-syntax/

  http://clarkparsia.com/pellet

  http://hermit-reasoner.com/
  
  http://code.google.com/p/factplusplus/
  
**Citation**

  Mikel Egaña Aranguren, Jesualdo Tomás Fernández-Breis and Erick Antezana. OPPL-Galaxy: Enhancing ontology exploitation in Galaxy with OPPL. SWAT4LS 2011.

**Contact**

  Please send any request or comment to mikel.egana.aranguren@gmail.com.

	</help>

</tool>