1 package org.openprovenance.elmo; 2 import java.util.Set; 3 import java.net.URI; 4 import org.openprovenance.rdf.Account; 5 import org.openprovenance.rdf.Node; 6 7 import javax.xml.namespace.QName; 8 import org.openrdf.elmo.ElmoManager; 9 import org.openprovenance.model.Annotable; 10 import org.openrdf.model.Statement; 11 import org.openrdf.elmo.sesame.SesameManager; 12 13 import org.openprovenance.model.CommonURIs; 14 15 public class RdfPName extends org.openprovenance.model.PName implements CompactAnnotation, CommonURIs { 16 17 ElmoManager manager; 18 String prefix; 19 QName qname; 20 21 static int count=0; 22 23 public RdfPName(ElmoManager manager, String prefix) { 24 this.manager=manager; 25 this.prefix=prefix; 26 } 27 28 29 public void toRdf(Annotable entity) throws org.openrdf.repository.RepositoryException { 30 org.openprovenance.rdf.Annotable subject=(org.openprovenance.rdf.Annotable)((HasFacade)entity).findMyFacade(); 31 subject.getPnames().add(URI.create(getValue())); 32 } 33 34 public void toRdf_DELETE(Annotable entity) throws org.openrdf.repository.RepositoryException { 35 QName subject=((HasFacade)entity).getQName(); 36 Statement stmnt=new org.openrdf.model.impl.StatementImpl(new org.openrdf.model.impl.URIImpl(subject.getNamespaceURI()+subject.getLocalPart()), 37 new org.openrdf.model.impl.URIImpl(NEW_PNAME_PROPERTY), 38 new org.openrdf.model.impl.LiteralImpl(getValue())); 39 40 ((SesameManager)manager).getConnection().add(stmnt); 41 42 } 43 44 45 }