# Metrics-Based Comparison of OWL and XML for Representing and Querying Cognitive Radio Capabilities
## 1 Introduction  
### Problem Scenario Descriptions  
A wireless network of reconfigurable software-defined radios (SDRs) can be considered a distributed computing system, as these SDRs possess the ability to perform various sensing and computation tasks requested by applications running on other similar nodes. For this high level of coordination, SDRs (these intelligent SDRs are referred to as 'cognitive radios', or simply as 'radios' henceforth) need to perform various simple to complex functions. Thus, they need to determine how specific capabilities may best address the issued queries, e.g., individual radios may need to inform the network controller of their capabilities, and applications may issue requests for services and the controller then can match the radio capabilities against the requests. Following this, a subset of radios can be invoked to perform the requested services. Similarly, radios may request permission to transmit, and such requests then need to be matched against policies and available resources (e.g., availability of the spectrum). In all such scenarios, the requests need to be compared with the radio capabilities in order to decide which devices can satisfy a specific request.  
Figure 1 shows a Unified Modeling Language (UML) diagram for some sample use-case scenarios. 'Device' and 'Application' are two actors who participate in the use cases ofthe system running on the network. A device registers its capabilities to the network, as indicated by _Register Device_ use case. After registering devices to the controller, whenever the latter receives a request by a device or an application for a service, it processes the request and then returns the results of the processing back to the requester. This functionality is captured by the _Request Service_, which includes the _Process Service_ use case denoted by the dotted arrow from _Request Service_ to _Process Service_. This arrow is annotated by the <<include>> label which, in UML terminology, implies that the use case at the tail end of the dotted arrow completely reuses all of the steps included for that case [1]. We can also observe from the figure that there are some special types of _Register Device_ and _Request Service_ use cases expressed by the inheritance relation, with the generalization arrow pointing to the more general use case from the more specific use case. This indicates that more than one language can be used to express device capabilities and application requests.  
Since both requests and device capabilities need to be formulated in a language that all devices understand, the main contribution of this paper is to identify a language that can describe the requests and radio capabilities. Such a language must be interpretable by devices, applications, and networks and it must have sufficient expressiveness to deal with various scenarios, requests, and device descriptions. The language must have precise semantics so that the meaning of the requests is precise and the devices can derive sound and complete results in response to the requests. Finally, the meaning of the returned results should be understandable by the requesters.