001/** 002 * Copyright (C) 2007 - 2016, Jens Lehmann 003 * 004 * This file is part of DL-Learner. 005 * 006 * DL-Learner is free software; you can redistribute it and/or modify 007 * it under the terms of the GNU General Public License as published by 008 * the Free Software Foundation; either version 3 of the License, or 009 * (at your option) any later version. 010 * 011 * DL-Learner is distributed in the hope that it will be useful, 012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 014 * GNU General Public License for more details. 015 * 016 * You should have received a copy of the GNU General Public License 017 * along with this program. If not, see <http://www.gnu.org/licenses/>. 018 */ 019package org.dllearner.kb.aquisitors; 020 021import org.apache.jena.graph.Node; 022import org.apache.jena.rdf.model.Literal; 023import org.apache.jena.rdf.model.Model; 024import org.apache.jena.rdf.model.RDFNode; 025import org.apache.jena.rdf.model.RDFVisitor; 026import org.apache.jena.rdf.model.Resource; 027 028/** 029 * This class is used to save disambiguated information for a blankNode in an RDF 030 * Graph. It is used to silently transport the info to the layer above. 031 * 032 * @author Sebastian Hellmann 033 * 034 */ 035public class RDFBlankNode implements RDFNode { 036 037 038 private RDFNode blankNode; 039 private int bNodeId; 040 041 public RDFBlankNode(int id, RDFNode blankNode) { 042 super(); 043 this.bNodeId = id; 044 this.blankNode = blankNode; 045 } 046 047 public int getBNodeId(){ 048 return bNodeId; 049 } 050 051 052 @Override 053 public String toString(){ 054 //RBC 055 return "bnodeid: "+bNodeId+" ||"+blankNode; 056 } 057 058 // overidden Functions 059 @SuppressWarnings("all") 060 public RDFNode as(Class view) { 061 062 return blankNode.as(view); 063 } 064 065 @SuppressWarnings("all") 066 public boolean canAs(Class view) { 067 068 return blankNode.canAs(view); 069 } 070 071 @Override 072 public RDFNode inModel(Model m) { 073 074 return blankNode.inModel(m); 075 } 076 077 @Override 078 public boolean isAnon() { 079 080 return blankNode.isAnon(); 081 } 082 083 @Override 084 public boolean isLiteral() { 085 086 return blankNode.isLiteral(); 087 } 088 089 @Override 090 public boolean isResource() { 091 092 return blankNode.isResource(); 093 } 094 095 @Override 096 public boolean isURIResource() { 097 098 return blankNode.isURIResource(); 099 } 100 101 @Override 102 public Object visitWith(RDFVisitor rv) { 103 104 return blankNode.visitWith(rv); 105 } 106 107 @Override 108 public Node asNode() { 109 110 return blankNode.asNode(); 111 } 112 113 /** 114 *{@inheritDoc} 115 */ 116 @Override 117 public Model getModel() { 118 return blankNode.getModel(); 119 } 120 121 /** 122 *{@inheritDoc} 123 */ 124 @Override 125 public Resource asResource() { 126 return blankNode.asResource(); 127 } 128 129 /** 130 *{@inheritDoc} 131 */ 132 @Override 133 public Literal asLiteral() { 134 return blankNode.asLiteral(); 135 } 136}