/** * Gets all the objects of provided BioPAX types. * * @param model BioPAX (PaxTools) model * @param classes query BioPAX types - e.g. Protein.class, Complex.class * @return */ public static Set<? extends BioPAXElement> getObjects(Model model, Class<? extends BioPAXElement>... classes) { Set<BioPAXElement> coll = new HashSet<BioPAXElement>(); if (model != null) { for (Class<? extends BioPAXElement> c : classes) { coll.addAll(model.getObjects(c)); } } return coll; }
public void check(Model model, boolean fix) { if(model.getObjects().isEmpty()) error(model, "empty.biopax.model", false, model.getLevel().toString()); }
private UnificationXref unificationXref(String db, String id) { if(db == null || db.trim().isEmpty()) { LOG.warn("unificationXref(), db is null, id=" + id); return null; } db = dbQuickFix(db); if(id == null || id.trim().isEmpty() || BAD_ID_VALS.contains(id.trim().toUpperCase())) { LOG.warn("unificationXref(), illegal or empty id:" + id); return null; } id = id.trim(); String xuri = xmlBase + "UnificationXref_" + encode(db.toLowerCase() + "_" + id); UnificationXref x = (UnificationXref) bpModel.getByID(xuri); if(x==null) { x= bpModel.addNew(UnificationXref.class, xuri); x.setDb(db); x.setId(id); } return x; }
private void addToReplacementMap(Model model, BioPAXElement bpe, String newRdfid) { // model has another object with the same (new) ID? if(model.containsID(newRdfid)) { // replace with the existing element (having new id) subs.put(bpe, model.getByID(newRdfid)); } else if(subsModel.containsID(newRdfid)) { subs.put(bpe, subsModel.getByID(newRdfid)); } else { // replace with its own copy that has new id BioPAXElement copy = copier.copy(bpe, newRdfid); subs.put(bpe, copy); subsModel.add(copy); } }
private Set<PhysicalEntity> getPEsRecursively(Set<PhysicalEntity> pes, Fetcher fetcher) { Model m = BioPAXLevel.L3.getDefaultFactory().createModel(); for(PhysicalEntity pe : pes) { if(pe instanceof Complex) fetcher.fetch(pe,m); else if(!m.containsID(pe.getRDFId())) m.add(pe); } return m.getObjects(PhysicalEntity.class); }
public boolean canCheck(Object thing) { return thing instanceof Model && ((Model)thing).getLevel() == BioPAXLevel.L3; } }
+ model.getObjects().size() + " objects"); if (model.getLevel() != BioPAXLevel.L3 && validation.isNormalize()) { if (log.isInfoEnabled()) log.info("Converting model to BioPAX Level3..."); model.getObjects()); for (final BioPAXElement el : elements) { model.repair(); if (model.getLevel() == BioPAXLevel.L3) { validation.addComment("number of interactions : " + model.getObjects(Interaction.class).size()); validation.addComment("number of physical entities : " + model.getObjects(PhysicalEntity.class).size()); validation.addComment("number of genes : " + model.getObjects(Gene.class).size()); validation.addComment("number of pathways : " + model.getObjects(Pathway.class).size()); } else { validation.addComment("number of interactions : " + model.getObjects(interaction.class).size()); validation.addComment("number of participants : " + model.getObjects(physicalEntityParticipant.class).size()); validation.addComment("number of pathways : " + model.getObjects(pathway.class).size());
assert model.getLevel().equals(BioPAXLevel.L3) : "This method only supports L3 graphs"; for (Entity entity : model.getObjects(Entity.class)) for (Interaction interaction : model.getObjects(Interaction.class)) throw new RuntimeException("SBGN Layout of " + model.getXmlBase() + ((model.getName()==null) ? "" : model.getName()) + " failed.", e);
Model model = convertFromOwl(new ByteArrayInputStream(xml.getBytes())); if(BioPAXLevel.L2.equals(model.getLevel())) { // model = (new LevelUpgrader()).filter(model); for (BioPAXElement e : model.getObjects()) { if(e instanceof EntityReference || e instanceof Complex || e.getModelInterface().equals(PhysicalEntity.class)) { String cpathId = e.getRDFId().replaceFirst(model.getXmlBase(), ""); if (cpathId != null) { cpathId = cpathId.replaceAll("CPATH-", "");
model.remove(e); if(!model.contains(e)) model.add(e); for(BioPAXElement e : model.getObjects()) { ModelUtils.fixDanglingInverseProperties(e, model);
private OntModel initializeEmptyOntModel(Model model) { OntModel ontModel = createModel(); String xmlBase = model.getXmlBase(); if (xmlBase == null || xmlBase.equals("")) { xmlBase = "http://biopax.org/paxtools#"; } Ontology base = ontModel.createOntology(xmlBase); String uri = model.getLevel().getNameSpace(); uri = uri.substring(0, uri.length() - 1); if (log.isDebugEnabled()) { log.debug("uri = " + uri); } ontModel.setNsPrefixes(model.getNameSpacePrefixMap()); base.addImport(ontModel.createResource(uri)); ontModel.loadImports(); return ontModel; }
public void check(final Validation validation, Model model) { Set<EntityFeature> efs = new HashSet<EntityFeature>(model.getObjects(EntityFeature.class));//defensive copy Set<EntityReference> ers = new HashSet<EntityReference>(model.getObjects(EntityReference.class)); model.add(newEf); er.removeEntityFeature(ef); er.addEntityFeature(newEf);
Evidence participantEvidence = bpModel.getLevel().getDefaultFactory() .create(Evidence.class, genUri(Evidence.class, "p",participant.getId())); if(!bpModel.contains(expEntity)) bpModel.add(expEntity); bpModel.add(participantEvidence); entity.addEvidence(participantEvidence); if(!bpModel.contains(entity)) bpModel.add(entity);
.getStringAttribute(nodeId, MapBioPaxToCytoscape.BIOPAX_RDF_ID); Model m = BioPaxUtil.getNetworkModel(Cytoscape.getCurrentNetwork().getIdentifier()); BioPAXElement bpe = m.getByID(biopaxId); StringWriter writer = new StringWriter(); if (bpe != null) { log.info("printing " + bpe + " OWL"); try { SimpleExporter simpleExporter = new SimpleExporter(m.getLevel());
= algorithm.cluster(model.getObjects(UtilityClass.class), Integer.MAX_VALUE); model.remove(clone); if(logger.isDebugEnabled()) logger.debug("Duplicate object " + clone.getRDFId()
BioPAXElement el = model.getByID(triple.domain); if(el != null) { o = el;
/** * Constructor. * * @param model * @param forceInteractionToComplex - always generate Complex instead of MolecularInteraction */ public EntryMapper(Model model, boolean forceInteractionToComplex) { this.bpModel = model; this.xmlBase = (model.getXmlBase()==null) ? "" : model.getXmlBase(); this.counter = System.currentTimeMillis(); this.forceInteractionToComplex = forceInteractionToComplex; }
@Override protected void visit(Object value, BioPAXElement parent, Model model, PropertyEditor editor) { if(value instanceof BioPAXElement && !model.contains((BioPAXElement)value)) { error(value, "dangling.value", false, editor.getDomain().getSimpleName(), editor.getProperty()); } } };
public boolean canCheck(Object thing) { return thing instanceof Model && ((Model)thing).getLevel()==BioPAXLevel.L3; }