source: branches/CEDMA-Refactoring-Ticket419/HeuristicLab.CEDMA.DB.Interfaces/Ontology.cs @ 988

Last change on this file since 988 was 988, checked in by gkronber, 12 years ago

worked on #419 (Refactor CEDMA plugins)

File size: 4.5 KB
Line 
1#region License Information
2/* HeuristicLab
3 * Copyright (C) 2002-2008 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
4 *
5 * This file is part of HeuristicLab.
6 *
7 * HeuristicLab is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * HeuristicLab is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
19 */
20#endregion
21
22using System;
23using System.Collections.Generic;
24using System.Linq;
25using System.Text;
26using HeuristicLab.CEDMA.DB.Interfaces;
27using System.Runtime.Serialization;
28
29namespace HeuristicLab.CEDMA.DB.Interfaces {
30  public static class Ontology {
31    public static string CedmaNameSpace {
32      get { return "http://www.heuristiclab.com/cedma/"; }
33    }
34
35    #region model attributes
36    public static Entity PredicateModelAttribute {
37      get { return new Entity(CedmaNameSpace + "ModelAttribute"); }
38    }
39    public static Entity PredicateModelAttributeName {
40      get { return new Entity(CedmaNameSpace + "ModelAttributeName"); }
41    }
42    public static Entity PredicateModelAttributeValue {
43      get { return new Entity(CedmaNameSpace + "ModelAttributeValue"); }
44    }
45    public static Entity PredicateModelAttributeType {
46      get { return new Entity(CedmaNameSpace + "ModelAttributeType"); }
47    }
48    /// <summary>
49    /// Attribute value is ordinal, values can be sorted.
50    /// Examples are quality measures or complexity measures.
51    /// </summary>
52    public static Entity TypeOrdinalAttribute {
53      get { return new Entity(CedmaNameSpace + "TypeOrdinalAttribute"); }
54    }
55    /// <summary>
56    /// Attribute value is categorical and thus can't be sorted.
57    /// Examples is target-variable.
58    /// </summary>
59    public static Entity TypeCategoricalAttribute {
60      get { return new Entity(CedmaNameSpace + "TypeCategoricalAttribute"); }
61    }
62    /// <summary>
63    /// Attribute is a quality measure
64    /// </summary>
65    public static Entity TypeQualityAttribute {
66      get { return new Entity(CedmaNameSpace + "TypeQualityAttribute"); }
67    }
68    /// <summary>
69    /// Attribute is a complexity measure
70    /// </summary>
71    public static Entity TypeComplexityAttribute {
72      get { return new Entity(CedmaNameSpace + "TypeComplexityAttribute"); }
73    }
74    #endregion
75
76    #region meta-data predicates
77    public static Entity PredicateName {
78      get { return new Entity(CedmaNameSpace + "Name"); }
79    }
80    /// <summary>
81    /// Each entity can have a serialized XML representation that can be loaded in HL.
82    /// </summary>
83    public static Entity PredicateSerializedData {
84      get { return new Entity(CedmaNameSpace + "SerializedData"); }
85    }
86    /// <summary>
87    /// Link from data set to model.
88    /// A data set can have multiple models.
89    /// </summary>
90    public static Entity PredicateHasModel {
91      get { return new Entity(CedmaNameSpace + "Model"); }
92    }
93    /// <summary>
94    /// Link from model to algorithm.
95    /// An algorithm can generate multiple models, each model is generated by exactly one algorithm.
96    /// </summary>
97    public static Entity PredicateGeneratedBy {
98      get { return new Entity(CedmaNameSpace + "GeneratedBy"); }
99    }
100    #endregion
101
102    #region types and type relations
103    public static Entity PredicateInstanceOf {
104      get { return new Entity(CedmaNameSpace + "InstanceOf"); }
105    }
106    public static Entity TypeGeneticProgrammingFunctionTree {
107      get { return new Entity(CedmaNameSpace + "FunctionTree"); }
108    }
109    public static Entity TypeDataSet {
110      get { return new Entity(CedmaNameSpace + "DataSet"); }
111    }
112    public static Entity TypeAlgorithm {
113      get { return new Entity(CedmaNameSpace + "Algorithm"); }
114    }
115    public static Entity TypeModel {
116      get { return new Entity(CedmaNameSpace + "Model"); }
117    }
118    #endregion
119
120    /// <summary>
121    /// Wildcard entity for filtering.
122    /// </summary>
123    public static Entity AnyEntity {
124      get { return new Entity(null); }
125    }
126
127  }
128}
Note: See TracBrowser for help on using the repository browser.