View Javadoc
1   /*
2    * Copyright 2018-2022 Medical Information Systems Research Group (https://medical.zcu.cz),
3    * Department of Computer Science and Engineering, University of West Bohemia.
4    * Address: Univerzitni 8, 306 14 Plzen, Czech Republic.
5    *
6    * Author Petr Vcelak (vcelak@kiv.zcu.cz).
7    *
8    * This file is part of MRECore project.
9    *
10   * MRECore is free software: you can redistribute it and/or modify
11   * it under the terms of the GNU General Public License as published by
12   * the Free Software Foundation, either version 3 of the License.
13   *
14   * MRECore is distributed in the hope that it will be useful,
15   * but WITHOUT ANY WARRANTY; without even the implied warranty of
16   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17   * GNU General Public License for more details.
18   *
19   * You should have received a copy of the GNU General Public License
20   * along with MRECore. If not, see <http://www.gnu.org/licenses/>.
21   */
22  package cz.zcu.mre.service.data;
23  
24  import java.util.List;
25  import java.util.Map;
26  import org.apache.jena.ontology.OntClass;
27  import org.apache.jena.ontology.OntModel;
28  import org.apache.jena.ontology.OntProperty;
29  import org.apache.jena.util.iterator.ExtendedIterator;
30  
31  /**
32   * Ontology Service.
33   *
34   * @author Petr Vcelak (vcelak@kiv.zcu.cz)
35   */
36  public interface OntologyService {
37  
38      /**
39       * Get Ontology model.
40       *
41       * @return Ontology model.
42       */
43      OntModel getOntology();
44  
45      Map<OntProperty, String> mapOfPropertyAndLabel(String prefLanguages);
46  
47      Map<String, String> mapOfLocalNameAndLabel(String prefLanguage);
48  
49      /**
50       * Get list of all vocabularies.
51       *
52       * @return List of vocabularies
53       */
54      List<OntClass> getVocabularyList();
55  
56      ExtendedIterator<OntProperty> listProperties(OntClass ontClass);
57  
58      ExtendedIterator<OntProperty> listProperties();
59  
60  }