Advertisement
Guest User

Untitled

a guest
Jul 22nd, 2013
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.51 KB | None | 0 0
  1. package net.foben.schematizer.parse;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.FileNotFoundException;
  5. import java.io.FileReader;
  6. import java.io.IOException;
  7.  
  8. import org.openrdf.rio.RDFFormat;
  9. import org.openrdf.rio.RDFHandler;
  10. import org.openrdf.rio.RDFHandlerException;
  11. import org.openrdf.rio.RDFParseException;
  12. import org.openrdf.rio.RDFParser;
  13. import org.openrdf.rio.Rio;
  14. import org.openrdf.rio.helpers.BasicParserSettings;
  15. import org.openrdf.rio.helpers.NTriplesParserSettings;
  16. import org.slf4j.Logger;
  17. import org.slf4j.LoggerFactory;
  18.  
  19. import static net.foben.schematizer.Environment.*;
  20.  
  21. public class QuadFileParser {
  22.    
  23.     private RDFParser parser;
  24.     private RDFHandler handler;
  25.     private String fileToParse;
  26.     private Logger _log;
  27.    
  28.     public QuadFileParser(RDFHandler handler, String filename){
  29.         _log = LoggerFactory.getLogger(QuadFileParser.class);
  30.         this.parser = Rio.createParser(RDFFormat.NQUADS);
  31.         this.handler = handler;
  32.         this.fileToParse = filename;
  33.         parser.setRDFHandler(this.handler);
  34.         configureParser(parser);
  35.     }
  36.    
  37.     private void configureParser(RDFParser parser){
  38.         _log.trace("Configuring Parser");
  39.         parser.setPreserveBNodeIDs(true);
  40.         parser.getParserConfig().set(BasicParserSettings.VERIFY_DATATYPE_VALUES, false);
  41.         parser.getParserConfig().set(BasicParserSettings.NORMALIZE_DATATYPE_VALUES, false);
  42.         parser.getParserConfig().set(BasicParserSettings.FAIL_ON_UNKNOWN_DATATYPES, false);
  43.         parser.getParserConfig().set(BasicParserSettings.VERIFY_LANGUAGE_TAGS, false);
  44.         parser.getParserConfig().set(BasicParserSettings.NORMALIZE_LANGUAGE_TAGS, false);
  45.         parser.getParserConfig().set(BasicParserSettings.FAIL_ON_UNKNOWN_LANGUAGES, false);
  46.         parser.getParserConfig().set(BasicParserSettings.VERIFY_RELATIVE_URIS, false);
  47.         parser.getParserConfig().set(BasicParserSettings.PRESERVE_BNODE_IDS, true);
  48.         parser.getParserConfig().addNonFatalError(BasicParserSettings.VERIFY_DATATYPE_VALUES);
  49.         parser.getParserConfig().addNonFatalError(BasicParserSettings.FAIL_ON_UNKNOWN_DATATYPES);
  50.         parser.getParserConfig().addNonFatalError(NTriplesParserSettings.FAIL_ON_NTRIPLES_INVALID_LINES);
  51.     }
  52.    
  53.     public void startParsing(){
  54.         BufferedReader in;
  55.         try {
  56.             in = new BufferedReader(new FileReader(fileToParse));
  57.             parser.parse(in, URI_IDS);
  58.         } catch (FileNotFoundException e) {
  59.             e.printStackTrace();
  60.         } catch (RDFParseException e) {
  61.             e.printStackTrace();
  62.         } catch (RDFHandlerException e) {
  63.             e.printStackTrace();
  64.         } catch (IOException e) {
  65.             e.printStackTrace();
  66.         }
  67.        
  68.     }  
  69.  
  70. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement