You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by jp...@apache.org on 2014/08/10 15:33:14 UTC
svn commit: r1617106 - in /jena/Experimental/jena-csv: ./
src/test/java/org/apache/jena/propertytable/impl/ src/test/resources/
Author: jpz6311whu
Date: Sun Aug 10 13:33:14 2014
New Revision: 1617106
URL: http://svn.apache.org/r1617106
Log:
JENA-625:
1. update google guava dependency in jena-csv pom.xml
2. add some tests for the real world csv data
Added:
jena/Experimental/jena-csv/src/test/resources/HEFCE_organogram_senior_data_31032011.csv
jena/Experimental/jena-csv/src/test/resources/PLOSone-search-results.csv
jena/Experimental/jena-csv/src/test/resources/Palo_Alto_Trees.csv
Modified:
jena/Experimental/jena-csv/pom.xml
jena/Experimental/jena-csv/src/test/java/org/apache/jena/propertytable/impl/GraphCSVTest.java
Modified: jena/Experimental/jena-csv/pom.xml
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-csv/pom.xml?rev=1617106&r1=1617105&r2=1617106&view=diff
==============================================================================
--- jena/Experimental/jena-csv/pom.xml (original)
+++ jena/Experimental/jena-csv/pom.xml Sun Aug 10 13:33:14 2014
@@ -47,22 +47,22 @@
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>apache-jena-libs</artifactId>
- <version>2.12.0-SNAPSHOT</version>
+ <version>2.12.1-SNAPSHOT</version>
<type>pom</type>
</dependency>
<!-- Google Code Guava -->
<dependency>
- <groupId>com.googlecode.guava-osgi</groupId>
- <artifactId>guava-osgi</artifactId>
- <version>11.0.0</version>
- </dependency>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava</artifactId>
+ <version>17.0</version>
+ </dependency>
<!-- Testing support -->
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-arq</artifactId>
- <version>2.12.0-SNAPSHOT</version>
+ <version>2.12.1-SNAPSHOT</version>
<type>jar</type>
<classifier>tests</classifier>
<scope>test</scope>
@@ -162,19 +162,5 @@
</plugins>
</build>
-
-
- <repositories>
- <repository>
- <id>maven-restlet</id>
- <name>Public online Restlet repository</name>
- <url>http://maven.restlet.org</url>
- </repository>
- <repository>
- <id>maven2-repository.dev.java.net</id>
- <name>Java.net repository</name>
- <url>http://download.java.net/maven/2</url>
- </repository>
- </repositories>
-
+
</project>
Modified: jena/Experimental/jena-csv/src/test/java/org/apache/jena/propertytable/impl/GraphCSVTest.java
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-csv/src/test/java/org/apache/jena/propertytable/impl/GraphCSVTest.java?rev=1617106&r1=1617105&r2=1617106&view=diff
==============================================================================
--- jena/Experimental/jena-csv/src/test/java/org/apache/jena/propertytable/impl/GraphCSVTest.java (original)
+++ jena/Experimental/jena-csv/src/test/java/org/apache/jena/propertytable/impl/GraphCSVTest.java Sun Aug 10 13:33:14 2014
@@ -32,11 +32,13 @@ import com.hp.hpl.jena.rdf.model.Model;
import com.hp.hpl.jena.rdf.model.ModelFactory;
import com.hp.hpl.jena.sparql.engine.main.StageBuilder;
import com.hp.hpl.jena.sparql.engine.main.StageGenerator;
+import com.hp.hpl.jena.util.PrintUtil;
public class GraphCSVTest extends Assert {
@Test
public void testGraphCSV() throws Exception {
+ //String file = "src/test/resources/HEFCE_organogram_senior_data_31032011.csv";test.csv
String file = "src/test/resources/test.csv";
Model csv = ModelFactory.createModelForGraph(new GraphCSV(file));
@@ -67,4 +69,74 @@ public class GraphCSVTest extends Assert
StageGenerator stageGenerator = new StageGeneratorPropertyTable(orig) ;
StageBuilder.setGenerator(ARQ.getContext(), stageGenerator) ;
}
+
+ //http://www.w3.org/TR/csvw-ucr/#UC-OrganogramData
+ //2.4 Use Case #4 - Publication of public sector roles and salaries
+ @Test
+ public void testUseCase4(){
+ String file = "src/test/resources/HEFCE_organogram_senior_data_31032011.csv";
+
+ Model csv = ModelFactory.createModelForGraph(new GraphCSV(file));
+ assertEquals(72, csv.size());
+
+ Query query = QueryFactory
+ .create("PREFIX : <src/test/resources/HEFCE_organogram_senior_data_31032011.csv#> SELECT ?name ?unit {?x :Name ?name ; :Unit ?unit ; :Actual%20Pay%20Floor%20%28%A3%29 ?floor ; :Actual%20Pay%20Ceiling%20%28%A3%29 ?ceiling . FILTER(?floor > 100000 && ?ceiling <120000 )}");
+
+ QueryExecution qexec = QueryExecutionFactory.create(query, csv);
+ ResultSet results = qexec.execSelect();
+
+ assertTrue(results.hasNext());
+ QuerySolution soln = results.nextSolution();
+ assertEquals( "David Sweeney", soln.getLiteral("name").getString());
+ assertEquals( "Research, Innovation and Skills", soln.getLiteral("unit").getString());
+
+ assertFalse(results.hasNext());
+ }
+
+
+ //http://www.w3.org/TR/csvw-ucr/#UC-JournalArticleSearch
+ //2.6 Use Case #6 - Journal Article Solr Search Results
+ @Test
+ public void testUseCase6(){
+ String file = "src/test/resources/PLOSone-search-results.csv";
+
+ Model csv = ModelFactory.createModelForGraph(new GraphCSV(file));
+ assertEquals(30, csv.size());
+
+ Query query = QueryFactory
+ .create("PREFIX : <src/test/resources/PLOSone-search-results.csv#> SELECT ?author {?x :author ?author ; :doi '10.1371/journal.pone.0095156' }");
+
+ QueryExecution qexec = QueryExecutionFactory.create(query, csv);
+ ResultSet results = qexec.execSelect();
+
+ assertTrue(results.hasNext());
+ QuerySolution soln = results.nextSolution();
+ assertEquals( "Oshrat Raz,Dorit L Lev,Alexander Battler,Eli I Lev", soln.getLiteral("author").getString());
+
+ assertFalse(results.hasNext());
+ }
+
+ //http://www.w3.org/TR/csvw-ucr/#UC-PaloAltoTreeData
+ //2.11 Use Case #11 - City of Palo Alto Tree Data
+ @Test
+ public void testUseCase11(){
+ String file = "src/test/resources/Palo_Alto_Trees.csv";
+
+ Model csv = ModelFactory.createModelForGraph(new GraphCSV(file));
+ assertEquals(199, csv.size());
+
+ Query query = QueryFactory
+ .create("PREFIX : <src/test/resources/Palo_Alto_Trees.csv#> SELECT ?longitude ?latitude {?x :Longitude ?longitude ; :Latitude ?latitude ; :Distance%20from%20Property ?distance . FILTER(?distance > 50 )}");
+
+ QueryExecution qexec = QueryExecutionFactory.create(query, csv);
+ ResultSet results = qexec.execSelect();
+
+ assertTrue(results.hasNext());
+ QuerySolution soln = results.nextSolution();
+ assertEquals( -122.1566921, soln.getLiteral("longitude").getDouble(), 0);
+ assertEquals( 37.4408948, soln.getLiteral("latitude").getDouble(), 0);
+
+ assertFalse(results.hasNext());
+ }
+
}
Added: jena/Experimental/jena-csv/src/test/resources/HEFCE_organogram_senior_data_31032011.csv
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-csv/src/test/resources/HEFCE_organogram_senior_data_31032011.csv?rev=1617106&view=auto
==============================================================================
--- jena/Experimental/jena-csv/src/test/resources/HEFCE_organogram_senior_data_31032011.csv (added)
+++ jena/Experimental/jena-csv/src/test/resources/HEFCE_organogram_senior_data_31032011.csv Sun Aug 10 13:33:14 2014
@@ -0,0 +1,5 @@
+Post Unique Reference,Name,Grade,Job Title,Job/Team Function,Parent Department,Organisation,Unit,Contact Phone,Contact E-mail,Reports to Senior Post,Salary Cost of Reports (£),FTE,Actual Pay Floor (£),Actual Pay Ceiling (£),,Profession,Notes,Valid?
+90115,Steve Egan,SCS1A,Deputy Chief Executive,Finance and Corporate Resources,Department for Business Innovation and Skills,Higher Education Funding Council for England,Finance and Corporate Resources,0117 931 7408,s.egan@hefce.ac.uk,90334,5883433,1,120000,124999,,Finance,,1
+90250,David Sweeney,SCS1A,Director,"Research, Innovation and Skills",Department for Business Innovation and Skills,Higher Education Funding Council for England,"Research, Innovation and Skills",0117 931 7304,d.sweeeney@hefce.ac.uk,90334,1207171,1,110000,114999,,Policy,,1
+90284,Heather Fry,SCS1A,Director,Education and Participation,Department for Business Innovation and Skills,Higher Education Funding Council for England,Education and Participation,0117 931 7280,h.fry@hefce.ac.uk,90334,1645195,1,100000,104999,,Policy,,1
+90334,Sir Alan Langlands,SCS4,Chief Executive,Chief Executive,Department for Business Innovation and Skills,Higher Education Funding Council for England,HEFCE,0117 931 7300/7341,a.langlands@hefce.ac.uk,xx,0,1,230000,234999,,Policy,,1
Added: jena/Experimental/jena-csv/src/test/resources/PLOSone-search-results.csv
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-csv/src/test/resources/PLOSone-search-results.csv?rev=1617106&view=auto
==============================================================================
--- jena/Experimental/jena-csv/src/test/resources/PLOSone-search-results.csv (added)
+++ jena/Experimental/jena-csv/src/test/resources/PLOSone-search-results.csv Sun Aug 10 13:33:14 2014
@@ -0,0 +1,6 @@
+id,doi,publication_date,title_display,author
+10.1371/journal.pone.0095131,10.1371/journal.pone.0095131,2014-06-05T00:00:00Z,"Genotyping of French <i>Bacillus anthracis</i> Strains Based on 31-Loci Multi Locus VNTR Analysis: Epidemiology, Marker Evaluation, and Update of the Internet Genotype Database","Simon Thierry,Christophe Tourterel,Philippe Le Flèche,Sylviane Derzelle,Neira Dekhil,Christiane Mendy,Cécile Colaneri,Gilles Vergnaud,Nora Madani"
+10.1371/journal.pone.0095156,10.1371/journal.pone.0095156,2014-06-05T00:00:00Z,Pathways Mediating the Interaction between Endothelial Progenitor Cells (EPCs) and Platelets,"Oshrat Raz,Dorit L Lev,Alexander Battler,Eli I Lev"
+10.1371/journal.pone.0095275,10.1371/journal.pone.0095275,2014-06-05T00:00:00Z,Identification of Divergent Protein Domains by Combining HMM-HMM Comparisons and Co-Occurrence Detection,"Amel Ghouila,Isabelle Florent,Fatma Zahra Guerfali,Nicolas Terrapon,Dhafer Laouini,Sadok Ben Yahia,Olivier Gascuel,Laurent Bréhélin"
+10.1371/journal.pone.0096098,10.1371/journal.pone.0096098,2014-06-05T00:00:00Z,Baseline CD4 Cell Counts of Newly Diagnosed HIV Cases in China: 2006â2012,"Houlin Tang,Yurong Mao,Cynthia X Shi,Jing Han,Liyan Wang,Juan Xu,Qianqian Qin,Roger Detels,Zunyou Wu"
+10.1371/journal.pone.0097475,10.1371/journal.pone.0097475,2014-06-05T00:00:00Z,Crystal Structure of the Open State of the <i>Neisseria gonorrhoeae</i> MtrE Outer Membrane Channel,"Hsiang-Ting Lei,Tsung-Han Chou,Chih-Chia Su,Jani Reddy Bolla,Nitin Kumar,Abhijith Radhakrishnan,Feng Long,Jared A Delmar,Sylvia V Do,Kanagalaghatta R Rajashankar,William M Shafer,Edward W Yu"
\ No newline at end of file
Added: jena/Experimental/jena-csv/src/test/resources/Palo_Alto_Trees.csv
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-csv/src/test/resources/Palo_Alto_Trees.csv?rev=1617106&view=auto
==============================================================================
--- jena/Experimental/jena-csv/src/test/resources/Palo_Alto_Trees.csv (added)
+++ jena/Experimental/jena-csv/src/test/resources/Palo_Alto_Trees.csv Sun Aug 10 13:33:14 2014
@@ -0,0 +1,6 @@
+GID,Private,Tree ID,Admin Area,Side of Street,On Street,From Street,To Street,Street_Name,Situs Number,Address Estimated,Lot Side,Serial Number,Tree Site,Species,Trim Cycle,Diameter at Breast Ht,Trunk Count,Height Code,Canopy Width,Trunk Condition,Structure Condition,Crown Condition,Pest Condition,Condition Calced,Condition Rating,Vigor,Cable Presence,Stake Presence,Grow Space,Utility Presence,Distance from Property,Inventory Date,Staff Name,Comments,Zip,City Name,Longitude,Latitude,Protected,Designated,Heritage,Appraised Value,Hardscape,Identifier,Location Feature ID,Install Date,Feature Name,KML,FusionMarkerIcon
+1,True,29,,,ADDISON AV,EMERSON ST,RAMONA ST,ADDISON AV,203,,Front,,2,Celtis australis,Large Tree Routine Prune,11,1,25-30,15-30,,Good,5,,,Good,2,False,False,Planting Strip,,44,10/18/2010,BK,,,Palo Alto,-122.1565172,37.4409561,False,False,False,,None,40,13872,,"Tree: 29 site 2 at 203 ADDISON AV, on ADDISON AV 44 from pl","<Point><coordinates>-122.156485,37.440963</coordinates></Point>",small_green
+2,True,30,,,EMERSON ST,CHANNING AV,ADDISON AV,ADDISON AV,203,,Left,,1,Liquidambar styraciflua,Large Tree Routine Prune,11,1,50-55,15-30,Good,Good,5,,,Good,2,False,False,Planting Strip,,21,6/2/2010,BK,,,Palo Alto,-122.1567812,37.440951,False,False,False,,None,41,13872,,"Tree: 30 site 1 at 203 ADDISON AV, on EMERSON ST 21 from pl","<Point><coordinates>-122.156749,37.440958</coordinates></Point>",small_green
+3,True,31,,,EMERSON ST,CHANNING AV,ADDISON AV,ADDISON AV,203,,Left,,2,Liquidambar styraciflua,Large Tree Routine Prune,11,1,40-45,15-30,Good,Good,5,,,Good,2,False,False,Planting Strip,,54,6/2/2010,BK,,,Palo Alto,-122.1566921,37.4408948,False,False,False,,Low,42,13872,,"Tree: 31 site 2 at 203 ADDISON AV, on EMERSON ST 54 from pl","<Point><coordinates>-122.156659,37.440902</coordinates></Point>",small_green
+4,True,32,,,ADDISON AV,EMERSON ST,RAMONA ST,ADDISON AV,209,,Front,,1,Ulmus parvifolia,Large Tree Routine Prune,18,1,35-40,30-45,Good,Good,5,,,Good,2,False,False,Planting Strip,,21,6/2/2010,BK,,,Palo Alto,-122.1564595,37.4410143,False,False,False,,Medium,43,13873,,"Tree: 32 site 1 at 209 ADDISON AV, on ADDISON AV 21 from pl","<Point><coordinates>-122.156427,37.441022</coordinates></Point>",small_green
+5,True,33,,,ADDISON AV,EMERSON ST,RAMONA ST,ADDISON AV,219,,Front,,1,Eriobotrya japonica,Large Tree Routine Prune,7,1,15-20,0-15,Good,Good,3,,,Good,1,False,False,Planting Strip,,16,6/1/2010,BK,,,Palo Alto,-122.1563676,37.441107,False,False,False,,None,44,13874,,"Tree: 33 site 1 at 219 ADDISON AV, on ADDISON AV 16 from pl","<Point><coordinates>-122.156335,37.441114</coordinates></Point>",small_green