public Statement skolemize ( final IdentifierConverter < Resource , FedoraResource > idTranslator , final Statement t , final String topic ) throws RepositoryException { Statement skolemized = t ; if ( t . getSubject ( ) . isAnon ( ) ) { skolemized = m . createStatement ( getSkolemizedResource ( idTranslator , skolemized . getSubject ( ) , topic ) , skolemized . getPredicate ( ) , skolemized . getObject ( ) ) ; } else if ( idTranslator . inDomain ( t . getSubject ( ) ) && t . getSubject ( ) . getURI ( ) . contains ( "#" ) ) { findOrCreateHashUri ( idTranslator , t . getSubject ( ) ) ; } if ( t . getObject ( ) . isAnon ( ) ) { skolemized = m . createStatement ( skolemized . getSubject ( ) , skolemized . getPredicate ( ) , getSkolemizedResource ( idTranslator , skolemized . getObject ( ) , topic ) ) ; } else if ( t . getObject ( ) . isResource ( ) && idTranslator . inDomain ( t . getObject ( ) . asResource ( ) ) && t . getObject ( ) . asResource ( ) . getURI ( ) . contains ( "#" ) ) { findOrCreateHashUri ( idTranslator , t . getObject ( ) . asResource ( ) ) ; } return skolemized ; }
Convert an external statement into a persistable statement by skolemizing blank nodes creating hash - uri subjects etc