diff --git a/README.md b/README.md index 897007e84ede107157ab68b012d054f49ef2a345..c6f042d6142b8a397eca2ef98f1c8458bb75d203 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,17 @@ Manuel Atencia, Jérôme David, Jérôme Euzenat, Data interlinking through robu - You need to have [Maven](https://maven.apache.org/) installed -- Download and unzip [Alignment API](https://gitlab.inria.fr/moex/alignapi) +- Download and unzip [Alignment API](https://gitlab.inria.fr/moex/alignapi). + +Use these commands to manually install alignment API : + +``` +wget ftp://ftp.inrialpes.fr/pub/exmo/software/ontoalign/align-4.10.zip +unzip align-4.10.zip -d alignapi +mvn install:install-file -Dfile=alignapi/lib/procalign.jar -DgroupId=fr.inrialpes.exmo.align -DartifactId=procalign -Dversion=4.10 -Dpackaging=jar +mvn install:install-file -Dfile=alignapi/lib/ontowrap.jar -DgroupId=fr.inrialpes.exmo -DartifactId=ontowrap -Dversion=4.10 -Dpackaging=jar +mvn install:install-file -Dfile=alignapi/lib/align.jar -DgroupId=org.semanticweb.owl.align -DartifactId=align -Dversion=4.10 -Dpackaging=jar +``` - Clone this repository : ``` @@ -31,16 +41,7 @@ git clone git@gitlab.inria.fr:moex/linkex.git cd linkex ``` -Use these commands to manually install alignment API : - -``` -mvn install:install-file -Dfile=pathToAlignmentAPI/lib/procalign.jar -DgroupId=fr.inrialpes.exmo.align -DartifactId=procalign -Dversion=4.8 -Dpackaging=jar - -mvn install:install-file -Dfile=pathToAlignmentAPI/lib/ontowrap.jar -DgroupId=fr.inrialpes.exmo.ontowrap -DartifactId=ontowrap -Dversion=4.8 -Dpackaging=jar - -mvn install:install-file -Dfile=pathToAlignmentAPI/lib/align.jar -DgroupId=org.semanticweb.owl.align -DartifactId=align -Dversion=4.8 -Dpackaging=jar -``` - Compile and package into a jar ``` @@ -54,26 +55,42 @@ Link key extraction tool can be run from command line. From the linkex directory, you can get the followinf help message: ``` java -jar target/LinkkeyDiscovery-1.0-SNAPSHOT-jar-with-dependencies.jar -help - usage: java fr.inrialpes.exmo.linkkey.LinkkeyDiscoveryAlgorithm [options] dataset1 dataset2 - -c <c> considers composition of properties - -c1 <c1> Uri of the first class (if omitted, all instances are - considered) - -c2 <c2> Uri of the second class (if omitted, all instances are - considered) - -e <e> use reference links for PR evaluation - -f,--format <f> Format of the output: txt (default), edoal, html, bin - -help print this message - -i considers inverse of properties - -o,--output <o> output filename. Default files: standard output for txt - and edoal, 'result' for html and bin - -s <s> a support threshold between [0;1] for properties - (default:0) - -sparql if given the datasets are considered as sparql - endpoints - -t <t> types of extracted keys: eq or/and in (eq and in by - default) + -b <b> find links between blank nodes (true by + default) + -c <composition length> compose properties + -c1 <uri1> Uri of the first class (if omitted, all + instances are considered) + -c2 <uri2> Uri of the second class (if omitted, all + instances are considered) + -classes extracts link keys candidates with classes + -classesfull extracts link keys candidates with classes + full (may be very expensive) + -d <d> property discriminability threshold + -e <e> use the given reference links for precision + and recall evaluation.the links are given in + RDF (i.e. a list of triples with predicate + owl:sameAs) + -f,--format <format> Format of the output: txt (default), edoal, + html, bin, dot, txt2 (txt with links) + -help print this message + -i considers inverse of properties (only useful + with -c) + -l Lazy mode, data will be loaded when needed + (only available for bin) + -o,--output <outputfile> output filename. Default files: standard + output for txt and edoal, 'result' for html + and bin + -p1 <uriprefix1> prefix of classes that have to be considered + -p2 <uriprefix1> prefix of classes that have to be considered + -s <s> a support threshold between [0;1] for + properties (default:0) + -sparql if given the datasets are considered as sparql + endpoints + -t <eq or in> types of extracted keys: eq or/and in (eq and + in by default) + ``` Example of command line: @@ -85,4 +102,4 @@ The extraction algorithm will extract intersection link key candidates (-t in). It will consider only properties that are instanciated for at least 1% of instances of foaf:Person (-s 0.01). It will consider inverse of properties and compostion of them until a maximum path length of 4. The result will be rendered as a set of html files (-f html) located in directory "mycandidates" (-o mycandidates). -The option -mx5000m allows to give 10GB of memory to the virtual machine. +The option -mx5000m allows to give 5GB of memory to the virtual machine. diff --git a/pom.xml b/pom.xml index e28bef2de5fdc8a721c3ce6e995ffe1553ea4a0f..88936c208872fcfa1bcc46a06377843fef5dfc73 100644 --- a/pom.xml +++ b/pom.xml @@ -6,21 +6,11 @@ <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <dependencies> - <!--dependency> - <groupId>org.apache.jena</groupId> - <artifactId>jena-core</artifactId> - <version>2.11.1</version> - </dependency--> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-collections4</artifactId> <version>4.4</version> </dependency> - <!--dependency> - <groupId>org.apache.jena</groupId> - <artifactId>jena-arq</artifactId> - <version>2.11.1</version> - </dependency--> <dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> @@ -34,12 +24,12 @@ <dependency> <groupId>fr.inrialpes.exmo.align</groupId> <artifactId>procalign</artifactId> - <version>4.8</version> + <version>[4.8,)</version> </dependency> <dependency> <groupId>org.semanticweb.owl.align</groupId> <artifactId>align</artifactId> - <version>4.8</version> + <version>[4.8,)</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> @@ -47,9 +37,9 @@ <version>3.9</version> </dependency> <dependency> - <groupId>${project.groupId}</groupId> + <groupId>fr.inrialpes.exmo.ontowrap</groupId> <artifactId>ontowrap</artifactId> - <version>4.8</version> + <version>[4.8,)</version> </dependency> <dependency> <groupId>junit</groupId> @@ -80,12 +70,7 @@ <version>8.4.1</version> </dependency> </dependencies> - - - - - <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.8</maven.compiler.source>