Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
1<?php
2
3/**
4 * This program is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU General Public License
6 * as published by the Free Software Foundation; under version 2
7 * of the License (non-upgradable).
8 *
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this program; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
17 *
18 * Copyright (c) 2002-2008 (original work) Public Research Centre Henri Tudor & University of Luxembourg
19 *                         (under the project TAO & TAO2);
20 *               2008-2010 (update and modification) Deutsche Institut für Internationale Pädagogische Forschung
21 *                         (under the project TAO-TRANSFER);
22 *               2009-2012 (update and modification) Public Research Centre Henri Tudor
23 *                         (under the project TAO-SUSTAIN & TAO-DEV);
24 *
25 */
26
27/**
28 * Short description of class core_kernel_api_ApiModel
29 *
30 * @abstract
31 * @access public
32 * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
33 * @package generis
34
35 */
36interface core_kernel_api_ApiModel extends core_kernel_api_Api
37{
38    // --- OPERATIONS ---
39
40
41    /**
42     * import xml rdf files into the knowledge base
43     *
44     * @access public
45     * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
46     * @param  string targetNameSpace
47     * @param  string fileLocation
48     * @return boolean
49     */
50    public function importXmlRdf($targetNameSpace, $fileLocation);
51
52
53    /**
54     * returns an xml rdf serialization for uriResource with all meta dat found
55     * inferenced from te knowlege base about this resource
56     *
57     * @access public
58     * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
59     * @param  string uriResource
60     * @return string
61     */
62    public function getResourceDescriptionXML($uriResource);
63
64    /**
65     * returns metaclasses tat are not subclasses of other metaclasses
66     *
67     * @access public
68     * @author patrick.plichart@tudor.lu
69     * @return core_kernel_classes_ContainerCollection
70     */
71    public function getMetaClasses();
72
73    /**
74     * returns classes that are not subclasses of other classes
75     *
76     * @access public
77     * @author patrick.plichart@tudor.lu
78     * @return core_kernel_classes_ContainerCollection
79     */
80    public function getRootClasses();
81
82    /**
83     * Short description of method getAllClasses
84     *
85     * @access public
86     * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
87     * @return core_kernel_classes_ContainerCollection
88     */
89    public function getAllClasses();
90
91    /**
92     * add a new statment to the knowledge base
93     *
94     * @access public
95     * @author patrick.plichart@tudor.lu
96     * @param  string subject
97     * @param  string predicate
98     * @param  string object
99     * @param  string language
100     * @return boolean
101     */
102    public function setStatement($subject, $predicate, $object, $language);
103
104    /**
105     * Short description of method removeStatement
106     *
107     * @access public
108     * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
109     * @param  string subject
110     * @param  string predicate
111     * @param  string object
112     * @param  string language
113     * @return boolean
114     */
115    public function removeStatement($subject, $predicate, $object, $language);
116
117    /**
118     * Short description of method getSubject
119     *
120     * @access public
121     * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
122     * @param  string predicate
123     * @param  string object
124     * @return core_kernel_classes_Resource
125     */
126    public function getSubject($predicate, $object);
127
128    /**
129     * Short description of method getObject
130     *
131     * @access public
132     * @author Bertrand Chevrier, <bertrand.chevrier@tudor.lu>
133     * @param  string subject
134     * @param  string predicate
135     * @return core_kernel_classes_ContainerCollection
136     */
137    public function getObject($subject, $predicate);
138}