@Override protected void writeAllIdentifiers(I object) throws IOException { super.writeAllIdentifiers(object); if (object.getImexId() != null && object.getIdentifiers().isEmpty()){ Collection<Xref> imexIds = XrefUtils.collectAllXrefsHavingDatabaseAndId(object.getXrefs(), Xref.IMEX_MI, Xref.IMEX, object.getImexId()); if (!imexIds.isEmpty()){ MIJsonUtils.writeSeparator(getWriter()); getIdentifierWriter().write(imexIds.iterator().next()); } } }
if( interaction.getIdentifiers().isEmpty() ) { MiContext context = RuleUtils.buildContext(interaction, "interaction"); messages=Collections.singletonList( new ValidatorMessage( "An interaction requires an identity cross reference to an interaction database (child term of "+ INTERACTION_DATABASE_MI_REF +")." , final Set<String> interactionDbs = collectNames(dbTerms); final Collection<Xref> dbRefs = XrefUtils.searchAllXrefsHavingDatabases(interaction.getIdentifiers(), interactionDbMis, interactionDbs); if( dbRefs.isEmpty() ) { MiContext context = RuleUtils.buildContext(interaction, "interaction"); String dbList = buildDbList( interaction.getIdentifiers() ); String msg = null; if( dbList.length() > 0 ) {
target.getXrefs().clear(); target.getXrefs().addAll(source.getXrefs()); target.getIdentifiers().clear(); target.getIdentifiers().addAll(source.getIdentifiers()); target.getParameters().clear(); target.getParameters().addAll(source.getParameters());
for (Xref ref : interaction.getIdentifiers()){ checkXref(messages, ref, interaction, "interaction");