Mercurial > repos > sem4j > sparql_tools
comparison tab2rdf.py @ 3:75c072490c2d draft
Uploaded
author | sem4j |
---|---|
date | Wed, 25 Sep 2013 02:38:23 -0400 |
parents | |
children | 360ae4d3d06c |
comparison
equal
deleted
inserted
replaced
2:dba28145ab27 | 3:75c072490c2d |
---|---|
1 # tab2rdf.py version:0.1 | |
2 # USAGE: python tab2rdf.py <input_file> <output_file> <output_format> <namespace> | |
3 # <s1_col> <p1_val> <o1_col> <o1_uri/val> <s2_col> <p2_val> <o2_col> <o2_uri/val> .. | |
4 # USAGE: python tab2rdf.py <input_file> <output_file> <output_format> multi_namespaces <column1> <namaspace1> <column2> <namespace2> .. | |
5 | |
6 import sys, csv, sqlite3, time | |
7 | |
8 argvs = sys.argv | |
9 num_triple = (len(argvs) - 4) / 4 | |
10 print('Number of Triples for One Column: ' + str(num_triple) + '\n') | |
11 | |
12 input_file = argvs[1] | |
13 output_file = argvs[2] | |
14 output_format = argvs[3] | |
15 ns = argvs[4] | |
16 | |
17 # OUTPUT | |
18 out = open(output_file, 'w') | |
19 | |
20 with open(input_file,'rb') as infile: | |
21 dr = csv.reader(infile, delimiter='\t') | |
22 row_count = 0 | |
23 for row in dr: | |
24 row_count += 1 | |
25 values = [] | |
26 col_count = 0 | |
27 for col in row: | |
28 col_count += 1 | |
29 values.append(col) | |
30 for i in range(0, num_triple): | |
31 s_val = values[int(argvs[4 * i + 5]) - 1] | |
32 p_val = argvs[4 * i + 6] | |
33 o_val = values[int(argvs[4 * i + 7]) - 1] | |
34 if int(argvs[4 * i + 8]) : | |
35 out.write('<' + ns + s_val + '> <' + ns + p_val + '> <' + ns + o_val + '> .\n') | |
36 else : | |
37 out.write('<' + ns + s_val + '> <' + ns + p_val + '> "' + o_val + '" .\n') | |
38 | |
39 out.close() | |
40 |