# Towards Collaborative and Dynamic Spectrum Sharing via Interpretation of Spectrum Access Policies
## 4 Ontology
Here, the subject would need to be an individual from a class, while the object is either an individual of a class or an instance of a data type, e.g., Integer or String. The predicate is an individual of a special class called Property. Properties represent relations between pairs of individuals. For example, the fact that a specific radio has a transmitter would be represented as a triple \(<\)_R-AFK2178_, _aggregateOf_, _TR-FRK0999\(>\)_. Here, aggregateOf is a predicate. The facts that R-AFK2178 is a radio and TR-FRK0999 is a transmitter would be represented as two other triples: \(<\)_R-AFK2178_, _rdf:type_, _Radio_\(>\) and \(<\)_TR-FRK0999_, _rdf:type_, _Transmitter_\(>\), in which a special OWL predicate _rdf:type_ is used to associate individuals with classes. In Figure 5, _rdf:type_ is shown simply as _type_. Predicates represent either relations between individuals or attributes of individuals. Some of the characteristics are the \"defining characteristics\". If an individual has those characteristics, it can be classified as an instance of that class. For example, a thing that has a transmitter and a receiver must be an instance of the class Radio. Some other characteristics are just \"descriptive\", e.g., characteristics that are common to various classes (various things have the property of weight). If it is known that a thing is an instance of a given class, then it is expected to have characteristics that are necessary of such a class. For example, if a thing is an instance of the class Radio, then it must have a transmitter and a receiver. For ontologies to be processable by computers, they must be described in a language that has formal semantics. To be \"understandable\", the language must also have formal, computer processable _semantics_. Roughly, it means that there needs to be a computer program that can answer queries about information encoded in the language. For example, in the context of relational databases, queries are expressed in the SQL language, and a database management system answers them by retrieving data stored in the database. The answers need to be _sound_, i.e., the answers must be correct with respect to what the database contains. For an ontological language, we require more than a database. An ontological language must have a program called \"_reasoner_ (or _inference engine_)\", which can do more than just retrieve information from its _knowledge_, but it should be able to extract information that is only implicit in the _knowledge_. e.g., if the knowledge base  
Figure 5: A fragment of the Radio Ontology. describes the radio communications domain, it will encode facts about some of the domain objects as _axions_ expressed in the language. The reasoner then will be able to process the input facts and the axioms and answer queries based only on partial information about an object. For example, if the _knowledge_ contains an object classified as jammer, the reasoner will be able to infer that it has a transmitter. The use of axioms has very powerful consequences because it provides means for extracting facts that are only implicit and for checking the logical consistency (lack of contradictions) of the _knowledge_.