コード例 #1
0
  /**
   * Создаем фрагмент запроса из списка именованных классов аксиомы и переданной sparql переменной,
   * привоенной субаксиоме.
   */
  public String getSparqlQueryPart(ArrayList<OWLClass> clsList, String SxAxVar) {
    LOGGER.info("   ===getSparqlQueryPart==");
    String fragmentOfQuery = "";
    for (OWLClass cls : clsList) {
      // Находи концепт в ОПП
      IRI conceptIRI =
          UPOont.getUPOont()
              .getConceptByIRIinAnnotationValue(
                  IRI.create(ConstantsOntConverter.SKOS_HIDDEN_LABEL), cls.getIRI());

      // Берем его переменную - нет переменная должна быть равна
      // переменной субаксиомы
      // String var = ontUPO.getAnnotationValue(conceptIRI,
      // IRI.create(UPO_SPARQL_VARIABLE_LABEL) );

      // Добавляем строку в запрос
      fragmentOfQuery =
          fragmentOfQuery
              + (SxAxVar
                  + " "
                  + ConstantsOntConverter.IRI_RDF_TYPE_SHORT
                  + " <"
                  + conceptIRI
                  + ">"
                  + ".\n");
      LOGGER.info("   ConceptIRI:" + conceptIRI);
      LOGGER.info("   Var of subAx:" + SxAxVar);
      LOGGER.info("   Fragment:" + fragmentOfQuery);
    }

    LOGGER.info("   ===END-getSparqlQueryPart==");
    return fragmentOfQuery;
  }
コード例 #2
0
 /**
  * Возвращает фрагмент названия субаксиомы из ее типизированных свойств и из диапазонов.
  *
  * @param propDomainPairList
  * @return
  */
 private String getDatatypePropNameFragment(ArrayList<PairOfIRI> propDomainPairList) {
   String fragment = "";
   for (PairOfIRI pairOfIRI : propDomainPairList) {
     // fragment = fragment + pairOfIRI.fIRI.getFragment()
     // +"{"+pairOfIRI.sIRI.getFragment()+"}" +
     // ConstantsOntConverter.UPO_TITLE_DELIMITER;
     fragment =
         fragment
             + pairOfIRI.getFirst().getFragment()
             + UPOont.getFBrackedString(pairOfIRI.getFirst().getFragment())
             + ConstantsOntConverter.UPO_TITLE_DELIMITER;
   }
   return fragment;
 }
コード例 #3
0
  /*
   * (non-Javadoc)
   *
   * @see ru.iimm.ontology.OWL2UPOConverter.SubAxiom#getNewTitle()
   */
  @Override
  protected String generateTitle() {
    LOGGER.info("=== Generate title for SubAxiom:\n" + this.getSubAxOWL());
    String namedTitle = "";

    /* В название добавляем имена классов субавксиомы */
    for (OWLClass cls : this.getClsList()) {
      namedTitle += cls.getIRI().getFragment() + ConstantsOntConverter.UPO_TITLE_DELIMITER;
    }

    /* Формируем карту: свойство --- массив субаксиом [] */
    HashMap<IRI, ArrayList<SubAxiom>> map = this.getPropSubaxMap(this.getPrpFromAxList());

    /* Из карты формируем подзаголовки - для сложных субаксиом */
    for (IRI propIRI : map.keySet()) {
      for (SubAxiom subax : map.get(propIRI))
        // namedTitle += subax.getTitle()
        namedTitle +=
            propIRI.getFragment()
                + ConstantsOntConverter.UPO_PROP_VAL_DELIMITER
                + subax.getTitle()
                + ConstantsOntConverter.UPO_TITLE_DELIMITER;
    }

    /* Добавляем фрагмент имени от типизированных свойств */
    namedTitle = namedTitle + this.getDatatypePropNameFragment(this.getDtpPrpList());

    /* Отрезаем лишний делимитер (-) из конца аксиомы */
    namedTitle =
        namedTitle.length() > 0
            ? namedTitle.substring(
                0, namedTitle.lastIndexOf(ConstantsOntConverter.UPO_TITLE_DELIMITER))
            : namedTitle;

    /* Обрамляем скобками субаксиому */
    // namedTitle = namedTitle.length()>0 ? "[" + namedTitle + "]" : null;
    namedTitle = namedTitle.length() > 0 ? UPOont.getSBrackedString(namedTitle) : null;

    return namedTitle;
  }
コード例 #4
0
 public String getSparqlVar() {
   return UPOont.getUPOont().genNewSparqlVar(this);
 }