A Context-Aware Approach for the Spatial Data Infrastructure Portal

The infrastructure of most of the practical and construction activity in communities is based on correct understanding and proper use of spatial data in GIS1 and SDI2. Optimal and efficient use of infrastructure systems of the spatial data by users, depends on how to search and access of user to proper and desired data among informative sources of various organizations. Search operation and access of users to various information of multiple sources located on Spatial Data Infrastructure Network is confusing and time-consuming due to diversity and relatively high volume of spatial information. Because there are numerous classes and subclasses of various complications on the pattern of SDI, unaware user to the pattern may be confused in select displaying the proper spatial layer. In optimum condition, the user should have access to the appropriate data type based on his status and task and environmental conditions. Making intelligent Graphical User Interface by inference based on task information user and his expertise, the appropriate information and consistent with conditions will be achieved. Selecting and displaying of spatial layers related to the technical-organizational approach of system user provides him special assistance both in terms of filtering the irrelevant data and speed of operation in access optimal information than non-selective displaying state. For this purpose, designing and employment context-aware techniques in servicing user interface of system based on recognition of the technical expertise of the user can be a good solution in data adaptive displaying and context-aware servicing to users.


Introduction
Nowadays, spatial data infrastructure is used in many areas and countries.Most producers of spatial data tend to share their data and services.The fundamental problem in optimum use of users from spatial data infrastructure systems is how to search and fast access of user to appropriate and desired data among information repositories of various organizations.Due to the diversity of spatial data and the need for correct understanding and proper use of them on the web pages and search engines, their applied separation and classification is required for different groups of users with different requirements.
On the other hand, the advent of Geographic Information System provides basis of the emergence of mobile processing and processing anywhere and anytime.Processes carried out in the context-aware and anywhere aware calculator environments, unlike conventional Geographic Information Systems, depend on the task environment and the dynamic conditions of user.In optimum state of working with spatial informative systems, the user should have access to the appropriate data type and consistent with its status and its task and environmental conditions.Support of this variability is possible when user's graphical interface act rather intelligent and by inference based on user's task information and his expertise, gives them the correct information and consistent with conditions.To smart user interface, an approach that has received considerable attention in recent years is the use of context-aware computing method [1] [2].
User interface is a mediator between humans and computers that provides the possibility of using the computer by communication possibility with all informative channels.In fact, the user interface is the visual and tangible part of computer programs that user deal directly with it [3].Current user interface for online systems are independent of the context, because they are not aware of who or what is around the user and hence will not be able to adapt themselves to the surrounding environment or certain conditions.
Hence assessment and evaluation of user profiles in order to provide proposed systems in implementation of the context-aware systems is very important.In spatial data infrastructure systems, the displayed map can be considered part of user interface.One of the important issues for users when working with SDI systems is accessibility to appropriate information according to user status at the user interface, so that visible information and accessibility for user be accordant in appropriate manner with his contextual conditions.
With the increasing massive amounts of data available in different organization producing various types of data and the need to use and work with them by various users and consequently dealing with complex search mechanisms to achieve desired results, the need to design and create context-aware user interfaces proportional to working conditions and user environment is more tangible.In fact, the contextual conditions of user have a close relation with his information needs, and how servicing system to him is controlled based on contextual information.Generally, in relation to search and optimum accessibility of users to the appropriate data in the geoportal user interface of spatial data infrastructure many effective contexts also can be considered.The effective contexts help the user in providing the best results in the framework of spatial services of Geoportals.
The purpose of this study is managing of the accessibility level of authorized and unauthorized users and also separating spatial data displaying related to the user and filtering unrelated additional layers for organizational users.So for this purpose, we have to investigate and determine the most effective context in this system.Thus according to deployment of the user working in various specialized organizations in certain place and also fixed the used device, as well as the type of specialized and defined task in the charts of these organizations, the most suitable context that can be used as contextual information in this program is the type of users and their technical-organizational approach.
In fact, according to purpose of this study context such as user location, type of the user and his work field in adaptive servicing to users is used.Indeed we use the location context and the user type as primary contextual data, also context of technical-organizational approach as high level contextual combined information obtained from primary context in adaptive servicing.Thus other contextual information such as user interests, history of user searches, type of device used in this application does not affect the quality of servicing of the system to this class of users.
Therefore in the present research in order to supply the objectives and advantages of SDI for users, we will use the geoportal of Clearinghouse in design and implementation of the desired user interface with web services such as WMS 3 and Web Service Catalog.
Continuation of this research is as described in the following.In Section 2 context-aware computing, its defi-nition and application of contextual information in SDI systems is explained.In Section 3, we describe the architecture and modeling of the desired system in this research, and in Section 4, we will discuss to implementation details.In Section 5, we will give conclusions and suggestions.

Context-Aware Computing and Applying It in SDI Systems
Given the diversity and plurality of spatial data and the necessity of correct understanding and proper use of them in spatial information systems, applied separation and classification of them is required for different groups of users based on their various knowledge and requires.Different users to obtain the desired spatial data need user interfaces coincident to their characteristics, according to interests and sometimes physical and environmental conditions.Context-aware computing is the ability of processing devices to find and measure, interpret and react to different situation, user environment and also devices themselves [4].The concept of context first time was introduced by Pacoe and Schilit, that the purpose of local position field of application was people or objects users it and changes of this people and objects in the environment.This definition was completed gradually and nowadays every kind of information which is effective in interaction of human and computer is called the context [1].
Another definition of context-aware systems provided by the Deys & Abowed, according to which "a system is context-aware if it uses contexts to provide information or services related to the user which relevance here is based on the user's work" [5].Practical aspect of this definition is that the most factors in choosing the spatial layers proportional to user is identifying expertise and work field of the user [1] [5].For example, type of spatial data proportional to a user in Cultural Heritage and Tourism office will be different with it in Roads and Urban Development office both in terms of information content and type of visualizing.
In fact, context by refining the additional data performs the related servicing.In general, context aware applications using automatic interface of data entry to the systems such as extracted data from sensors have been developed to reduce the explicit intervention of user in introducing the input data to the systems [6].
In spatial information systems, it is also better to user has access to the appropriate data type based on his status and work and environmental conditions.Therefore with the implementation of contexts in applied programs of these systems, context-aware applied programs will dynamically adapt their behavior according to the user context and new conditions and this increases the efficiency of the results [7].
Users of the most systems, particularly systems of special data infrastructure require a context-aware user interface based on changing their context to change if the contexts change.Generally, context-aware system performance based on user profiles contexts provides many potential applications for these applied programs and improving the capabilities of mobile and non-mobile spatial information system, which can classify them into customized views of information, automatic execution of commands and data storage [1] [8].
In context-aware systems, displaying information and automatic services is done to reduce the amount of explicit communication of users with system based on reception and recognition of the user environment [6].For example, in spatial information systems only part of the information to be displayed that is relevant to the user's skill and expertise.Automatic execution of commands is reactivity ability of these programs that for example, navigation programs during user routing and detection of system based on the loss of a major intersection along the path, immediately runs the shortest path function and offers the user an alternative path to reach the target point [2] [7] [9].
Storing of context information enables the system to receive and extract user's profiles data using information such as records of user activity or search history, as well as his preference using data mining techniques.Contextual information stored on the system also can be considered as a footprint left of the user [10].
Also using contextual information in context-aware applied programs, the functions of these programs are classified at two levels of analysis and display [11].Context-awareness in the analysis level can be considered as spatial information systems using input information of the context.For example, a service which searches desirable points and displays it to user is an example of this type.In fact by considering the contextual information in these services, analysis of this information is discussed and kinds of information is displayed that be accordance with the contextual conditions and his target [1].
Context awareness in display level is the same as adaptive display performance of information systems in map presentation to the users.In this state, in addition to data selection, type of information display, namely how display layers, separation of layers display and other information change based on the contexts [1] [8].For ex-ample by changing the user context such as the type of device used or speed of moving and so, the scale of the displayed map to the user, or types of symbols used on maps on the basis of familiarity or technical knowledge of users with these signs can be changed.In the presented research this SDI context-aware system is supposed to run out the separated information displaying in the user interface at displaying level for users according to related contextual information.In the other words, the purpose is servicing the adaptive displaying of the map and separating spatial layers accordance with the current status of the system user.

Architecture and Modeling
In accordance the function is expected from geoportals, spatial portal architecture should cover four floors servicing to implement a comprehensive spatial portal such as Portal Services, Catalog Services, Portrayal Services, and Data Services [12] [13].
On this basis we proposed an architecture for such systems that its components, as shown in figure 1, is designed an infrastructure context-aware service of spatial data for mobile and non-mobile SDI users.In accordance with the architecture depicted in Figure 1, SDI context-aware system consists of Geolocator application layer, Web services layers, and data and metadata layers.Geolocator application layer in this structure is a web based program and performs locating the users with mobile equipment (briefly, the mobile user) using GPS and non-mobile users applying IP Geolocator application with evaluation his password, and finally identifying user type and his location.
Web application provides a user interface supports various languages.If the system wants to use other contextual information to identify suitable services to users, including priorities, plans and intended purposes of user, system using this section can ask user such information directly and manually.Web services layer consists of WMS, CSW 4 , WFS 5 , WPS6 , CI 7 , etc. Definitions and functions of each of these web services come in the following [14] [15].
WMS is for cartographic display or imaging from spatial data.CSW task is catalog services, publishing metadata of spatial information sources and also search and query of this information.WFS is the function of these services to access spatial data based on GML that describes the geographical complication.WPS, the processor services, processes the existing data and produces and supplies new information desired user.CI is the component of contextual information that this web service provides related information proportional to the user conditions and location [12] [13] [16].
Layers of data and metadata consist of metadata catalog and spatial database.Metadata catalog is a collection of metadata that describes accessible data according to ISO standards.Spatial database is also contains data storages included spatial data.
In the architecture design of these components on the network, in the first stage, we consider client-server architecture according Figure 2. In the architecture shown in Figure 1, user identification and recognition of his work is done by tracking IP applications on the client side and the result is sent to the server.Other processes including validation, interpretation of contextual data, determination of authorized and unauthorized user types, and determination of providing specific services to users is done on the server site.Hierarchy of context-aware applications should have on their agenda three main stages sensing, processing and action.Sensing and collecting contextual information surrounding the user is done usually by the sensors.
In this context-aware computing, we now have the means of considering the situation of use in the design process.In Human-Computer Interaction (HCI), we traditionally aim to understand the user and the context of use and create designs that support the major anticipated use cases and situations of use.In Context-Aware Computing on the other hand, making use of context causes a fundamental change: We can support more than one context of use that are equally optimal.At runtime-when the user interacts with the application-the system can decide what the current context of use is and provide a user interface specifically optimized for this context.With context-awareness, the job of designing the user interface typically becomes more complex as the number of situations and contexts which the system will be used in usually increases.The advantage of this approach is that we can provide optimized user interfaces for a range of contexts.The general structure of contextaware systems, as shown in Figure 3, contains sensors in the role of receiving contextual information of environment and user, Feature calculation sensor, Context calculation as the responsible for interpretation of contextual information, Context provision and finally application [17] [18].In most context aware applications, between the sensors and the application layers, in addition to context calculation component, another middle layers also   [18].are placed such as layers of raw data recovery, contextual information processing or interpreting, storing of contextual information management.In many complex contextual-aware applications, contextual information extracted from the primary data is required, because servicing of these systems is often not possible according to the primary measured data; in other words, most of the contextual data after collecting is as crude and primary and are not suitable to guiding application.
If needed the application, preprocessing layer is used to convert the crude data into meaningful data [19].But still in the most complex and higher level applications, pre-processed data are not sufficient to decide in the application.Thus with argue on the pre-processed data using logical reasoning and inference high level combined information of them, it should be provide the entry condition of contextual data into the application logic.After production of combined data, decision making of the application will be made based on this information [20]- [22].Finally, modeling of context-aware systems have been designed and implemented using a combination of high-level information extracted from the primary and raw contextual data, as shown in Figure 4.

Implementation and Performance
In the design and implementation of this system in the first stage, as we said, client-server architecture was considered.For more information of this architecture the reader can see references [12] [13] [23].Then other components of this architecture based on the grid pattern of coordination center of a geoportal is designed and developed.The workflow in the proposed architecture is shown in Figure 5, so that initially user is connected to the geoportal entrance portal, simultaneous with connection user to the user interface in the client side, user position is detected.
So that the user's computer IP is identified by IP Geolpcator in the client side, and then the location of the user and the organization of work and his expertise is determined.The Proxy is used as the intermediator between the user interface and web services in order not to create a direct link between client side and server side and providing more security; because by Proxy there is no direct access to the spatial data for the user.On the other hand, using the user registration system in user interface, user is evaluated and identified in terms of access permissions and validated and if authorized and validity, through Proxy both access to special services of user interface and based on registry information will help to better identify him.
In accordance with the architectural design context aware systems that we proposed in Section 4, also in this section the primary contextual data is the same location based on Ip of user system and his valid password.IP or  Internet Protocol is a number that is given to every computer connected to the Internet.By using the IP number can access to the computers.For computers that have server mode and also client computers that are usually connected to the internet by a method other than dial up, this is a constant number with 32 bit and is written as xxx.xxx.xxx.xxx for the convenience.The purpose of xxx is a number between 0 to 255.
By the IP locator application written in JavaScript, it can be identified user's IP during connection to the internet.From comparison of the obtained IP serial by that from organization systems and also comparison the user's password in the section of authorized user registration system with the serial of the password considered for different organization, first type of the user and then the user workplace and consequently his work field is identified.So that in the pre-processing stage, the IP of user system is converted from a numerical value to a meaningful data.After identifying this serial number, by comparison of IP serial of related organization systems and also by comparison the user's password with the range of assigned password to the users of the organization, contextual information of the user type and his workplace is obtained.So at this stage, contextual data of the user type and his workplace is considered as a data produced from pre-processing.
At the next stage, using the logic used in the interpreter component of the system on the server side, and by argument on the workspace data, the level of expertise and technical knowledge and also the relation between this work and various spatial layers, as high level and combined contextual information are placed in the database of server side.Now these information are ready to use in order to make decision in the how servicing to the users in the application part.Hence, separating of spatial layers proportional to the user work field is managed in the proxy section and by getting information from the combined information database.Also using Proxy, access of various users to different organization metadata and layers is controlled and separated.
In this study, Geonetwork software that is open source and written in Java language is used to create metadata service catalog and also the possibility of searching the user's required data.User request after passing through the registry filter and determination of work field of the user by the user side JavaScript, is sent as a file with XML format to the Proxy and then by Geonetwork to the entire catalog services.After receiving the search results that are also in XML format, the related metadata through Geonetwork, returns to the Proxy and from there to the user interface.
In user interface also by decoding operation of the received XML file from Geonetwork in server side, metadata of the user's desired data is displayed in the legible list format for him.After displaying the metadata related to the user, there will be possible to see the user's desired data using WMS, getting them using WFS (if existing) or processing them using WPS (if existing).For this purpose we use from GeoServer software that is written in the Java programming language as open source to display the desired layer.
WMS web service has the ability to display information under OGC standards and is used to display the layers using the address of layers service that is placed in their files.Information layers can be stored in Shapefile format in local file within the Geoserver or in spatial database such as Oracle and PostGIS [16] [24].The relation between the user interface and Geoserver and also creating authorized access for the users is done through Proxy.For this purpose a Proxy.ashxfile is used as the intermediator between the web map service server side and the user interface.So that using the Proxy system based on the user type, it displays the data proportional to WMS web service.
In the part of showing the map and implementation of this section, we assume that a user from the Department of Roads and Urban Development is connected to the system.After identifying the assumed user of the Department of Roads by the user interface, WMS web service can be displayed the roads layer and the country administrations the layers associated with the work field of the user as shown in Figure 6 as default for him.

Conclusions
In this paper, an adaptive display of spatial layers with the user knowledge in the part of map displaying is done using the WMS web service.Function of context aware WMS system is so that after the user's identity when logging into the system in server side, the Proxy part that as a mediator has the role of communication between the user and Geoserver, commends the appropriate spatial layers based on the user type.
One advantage of this function is to help the user to access data proportional to his work field among the many spatial layers available in the storage of system server; because in spatial portals, several layers have been loaded in organizational data storage.For different users with different areas and levels of technical knowledge, uniform and fixed showing model cannot be considered; because all the users whatever they see, not necessity want.Another important advantage of displaying the context aware WMS is faster displaying of spatial data in system.We know that the volume of spatial layers in any format, for example in the form of Shape file, determines the speed of loading and displaying them in the context of the network.Now suppose, in a system such as Geoportals, a very large number of spatial data consisting of different layers defined in the pattern of spatial data infrastructure is placed in spatial database of system's service side and be ready to display in the page of system's user interface using WMS service.If how to display these high volume of layers not managed properly, displaying the available layers in user interface will be very time consuming and difficult.To overcome this problem, one of the solutions for efficient displaying of spatial layers is displaying them using-context aware and adaptive WMS.
A context-aware WMS in the user interface of Geoportal, after identifying the technical-organizational approach and the user knowledge, displays him the layers related with his technical knowledge as default.In order to evaluate the designed system, the comparison between this context ware system and a typical system shows that, the displaying speed of the layers is faster than the other.Because this system select the authorized and appropriate layers and prevent the displaying of the unauthorized and unrelated layers.So time of downloading the layers in the page will increase efficiently.Another preference of this system that can be counted, help to the users to access data related to their work field and their needs without confusing.
Therefore the need to display, download and even quick access level to the appropriate layers shows the necessity of displaying context aware WMS for the users by filtering unrelated massive layers.And the other advantage, system managers can control the access level of different types of the authorized and unauthorized users to different layers by using the selective and adaptive display for them and maintain the security of the critical and important special data.It's being suggested for the future work, adoptive WMS for all the layers of spa-Figure 6. Showing spatial layers of the country roads using the context aware WMS.tial data in SDI be designed and also the adaptive WFS and WPS can be new ideas for the Context awareness in SDI.

Figure 1 .
Figure 1.Layers of designed context-aware application of spatial data infrastructure.

Figure 2 .
Figure 2. The general architecture of the web site.

Figure 4 .
Figure 4.The architecture and components of context-aware systems.

Figure 5 .
Figure 5.The architecture and context-aware system components of spatial data infrastructure.