Class JenaIngestUtils
- java.lang.Object
-
- edu.cornell.mannlib.vitro.webapp.utils.jena.JenaIngestUtils
-
public class JenaIngestUtils extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classJenaIngestUtils.MergeResult
-
Constructor Summary
Constructors Constructor Description JenaIngestUtils()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.jena.rdf.model.ModeldedupAndExtract(org.apache.jena.rdf.model.Model model, String preferredNamespace)Returns a model where redundant individuals that are sameAs one another are smushed using URIs in preferred namespaces where possible.JenaIngestUtils.MergeResultdoMerge(String uri1, String uri2, org.apache.jena.ontology.OntModel baseOntModel, org.apache.jena.ontology.OntModel tboxOntModel, boolean usePrimaryLabelOnly)Merges statements about resource uri2 into resource uri1 and delete uri2.voiddoPermanentURI(String oldModel, String newModel, String oldNamespace, String newNamespace, org.apache.jena.rdf.model.ModelMaker maker, VitroRequest vreq)Map<String,LinkedList<String>>generatePropertyMap(List<org.apache.jena.rdf.model.Model> sourceModels, org.apache.jena.rdf.model.ModelMaker maker)org.apache.jena.ontology.OntModelgenerateTBox(org.apache.jena.rdf.model.Model abox)StringgetUnusedURI(String newNamespace, WebappDaoFactory wdf)voidprocessPropertyValueStrings(org.apache.jena.rdf.model.Model source, org.apache.jena.rdf.model.Model destination, org.apache.jena.rdf.model.Model additions, org.apache.jena.rdf.model.Model retractions, String processorClass, String processorMethod, String originalPropertyURI, String newPropertyURI)org.apache.jena.rdf.model.ModelrenameBNodes(org.apache.jena.rdf.model.Model inModel, String namespaceEtc)Returns a new copy of the input model with blank nodes renamed with namespaceEtc plus a random int.org.apache.jena.rdf.model.ModelrenameBNodes(org.apache.jena.rdf.model.Model inModel, String namespaceEtc, org.apache.jena.rdf.model.Model dedupModel)Returns a new copy of the input model with blank nodes renamed with namespaceEtc plus a random int.org.apache.jena.rdf.model.ModelrenameBNodesByPattern(org.apache.jena.rdf.model.Model inModel, String namespaceEtc, org.apache.jena.rdf.model.Model dedupModel, String pattern, String property)org.apache.jena.rdf.model.ModelsmushResources(org.apache.jena.rdf.model.Model inModel, org.apache.jena.rdf.model.Property prop)A simple resource smusher based on a supplied inverse-functional property.org.apache.jena.rdf.model.ModelsplitPropertyValues(org.apache.jena.rdf.model.Model inModel, String propertyURI, String splitRegex, String newPropertyURI, boolean trim)Splits values for a given data property URI on a supplied regex and asserts each value using newPropertyURI.
-
-
-
Method Detail
-
renameBNodes
public org.apache.jena.rdf.model.Model renameBNodes(org.apache.jena.rdf.model.Model inModel, String namespaceEtc)Returns a new copy of the input model with blank nodes renamed with namespaceEtc plus a random int.- Parameters:
inModel- input Jena ModelnamespaceEtc- Namespace
-
renameBNodes
public org.apache.jena.rdf.model.Model renameBNodes(org.apache.jena.rdf.model.Model inModel, String namespaceEtc, org.apache.jena.rdf.model.Model dedupModel)Returns a new copy of the input model with blank nodes renamed with namespaceEtc plus a random int. Will prevent URI collisions with supplied dedupModel- Parameters:
inModel- input Jena ModelnamespaceEtc- Namespace
-
renameBNodesByPattern
public org.apache.jena.rdf.model.Model renameBNodesByPattern(org.apache.jena.rdf.model.Model inModel, String namespaceEtc, org.apache.jena.rdf.model.Model dedupModel, String pattern, String property)
-
generatePropertyMap
public Map<String,LinkedList<String>> generatePropertyMap(List<org.apache.jena.rdf.model.Model> sourceModels, org.apache.jena.rdf.model.ModelMaker maker)
-
processPropertyValueStrings
public void processPropertyValueStrings(org.apache.jena.rdf.model.Model source, org.apache.jena.rdf.model.Model destination, org.apache.jena.rdf.model.Model additions, org.apache.jena.rdf.model.Model retractions, String processorClass, String processorMethod, String originalPropertyURI, String newPropertyURI)
-
splitPropertyValues
public org.apache.jena.rdf.model.Model splitPropertyValues(org.apache.jena.rdf.model.Model inModel, String propertyURI, String splitRegex, String newPropertyURI, boolean trim)Splits values for a given data property URI on a supplied regex and asserts each value using newPropertyURI. New statements returned in a Jena Model. Split values may be optionally trim()ed.- Parameters:
inModel- Input Jena modelpropertyURI- URI for propertysplitRegex- Regex for splitnewPropertyURI- URI for new propertytrim- Flag to trim property- Returns:
- outModel
-
smushResources
public org.apache.jena.rdf.model.Model smushResources(org.apache.jena.rdf.model.Model inModel, org.apache.jena.rdf.model.Property prop)A simple resource smusher based on a supplied inverse-functional property. A new model containing only resources about the smushed statements is returned.- Parameters:
inModel- Input Jena modelprop- Property
-
dedupAndExtract
public org.apache.jena.rdf.model.Model dedupAndExtract(org.apache.jena.rdf.model.Model model, String preferredNamespace)Returns a model where redundant individuals that are sameAs one another are smushed using URIs in preferred namespaces where possible.- Parameters:
model- Jena ModelpreferredNamespace- Preferred Namespace
-
generateTBox
public org.apache.jena.ontology.OntModel generateTBox(org.apache.jena.rdf.model.Model abox)
-
doMerge
public JenaIngestUtils.MergeResult doMerge(String uri1, String uri2, org.apache.jena.ontology.OntModel baseOntModel, org.apache.jena.ontology.OntModel tboxOntModel, boolean usePrimaryLabelOnly)
Merges statements about resource uri2 into resource uri1 and delete uri2.- Parameters:
uri1- The resource to merge touri2- The resource to merge frombaseOntModel- The model containing the relevant statementstboxOntModel- The model containing class and property datausePrimaryLabelOnly- If true, discard rdfs:labels from uri2. Otherwise retain.
-
doPermanentURI
public void doPermanentURI(String oldModel, String newModel, String oldNamespace, String newNamespace, org.apache.jena.rdf.model.ModelMaker maker, VitroRequest vreq)
-
getUnusedURI
public String getUnusedURI(String newNamespace, WebappDaoFactory wdf)
-
-