<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">LogicGeoObject: a Client-Side Architectural Model for Aggregating Geospatial Dynamics from Sensor Web</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Xuelin</forename><surname>He</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Department of Civil, Environmental &amp; Geomatic Engineering</orgName>
								<orgName type="institution">University College London</orgName>
							</affiliation>
						</author>
						<author role="corresp">
							<persName><forename type="first">Jeremy</forename><forename type="middle">G</forename><surname>Morley</surname></persName>
							<email>jeremy.morley@nottingham.ac.uk</email>
							<affiliation key="aff1">
								<orgName type="department">Centre for Geospatial Science</orgName>
								<orgName type="institution">University of Nottingham</orgName>
								<address>
									<country key="GB">UK</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">LogicGeoObject: a Client-Side Architectural Model for Aggregating Geospatial Dynamics from Sensor Web</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">A731E1EDFC0E685034120BD57A5DF10B</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T14:16+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>LogicGeoObject</term>
					<term>LeKML</term>
					<term>ADIR Architecture</term>
					<term>mashability</term>
					<term>interoperability</term>
					<term>Geospatial dynamics</term>
					<term>Proximity-based interaction</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Sensor technology brings the pervasive capability for observing and communicating real-world dynamics, while current GeoWeb lacks a model for scalable aggregation of client-side logic applications that convey and apply these dynamics. This research explores a client-side architectural model, ADIR (short for Aggregating Dynamics, Interaction &amp; Responsiveness), for organizing geospatial logic applications. A core concept for ADIR is the LogicGeoObject representing a granular unit of geospatial logic. Some inbuilt mechanisms and facilities enable ADIR to cater for geospatially specialized missions. An implementation named LeKML materializes this LogicGeoObject conceptual component. This ADIR architectural model is expected to become a geospatially self-owned, normalized and integral facility for building the mashable Geospatial Logic Web.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>The Geospatial Sensor Web <ref type="bibr" target="#b0">[1]</ref> aims to mirror the real world with multi-source dynamics of interests to provide an integrative context for decision making. Clientside logic is the direct initiator and coordinator of a chained workflow involving back and front ends, so the mashability <ref type="bibr" target="#b1">[2]</ref> of client-side logic is a crucial factor in creating an integrative and dynamic front-end for end users.</p><p>Most academic and industrial efforts have been concentrating on back-end architectures and techniques. For example, sensor networks observe real-world dynamics, and Open Geospatial Consortium (OGC) Sensor Web Enablement (SWE) services disseminate dynamic sensor data.</p><p>There are also certain efforts working on client-side functionality. For example, Tillman &amp; Garnett <ref type="bibr" target="#b2">[3]</ref> explore integrated client-side access to OGC Web Services, while the OGC Web Service Access Framework (OX-Framework) developed in the 52°North Community <ref type="bibr" target="#b3">[4]</ref> provides a framework for plugging OGC Web Services connectors. In nature, these integrated connectors are all common functional components to be used by client-side applications. However, existing research is still inadequate to make these client applications mashable and interoperable, i.e., to be able to aggregate various independently developed elements of geospatial logic with arbitrary scalability. It is challenging to mash up heterogeneous sources of applied logic and services <ref type="bibr" target="#b4">[5]</ref>. In a scenario based around mashing up various standalone Sensor Web client applications, the potential clash of code logic as well as lack of interoperability is really a headache.</p><p>How can we make heterogeneous sources of geospatial logic mashable and interoperable? This research explores a fundamental solution to equip the GeoWeb with an architectural model on the client side.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">An Architecture Strategy: LogicGeoObject for Aggregating Dynamics, Interaction &amp; Responsiveness (ADIR)</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>2.1</head><p>Requirements.</p><p>To achieve generic mashability, an architecture needs to meet some essential requirements: a. Mashability. All units of geospatial logic, including those standalone GeoWeb applications, can become mashable ingredients which can generate and manipulate dynamic data respectively.  b. Reusability. Mashable logic units including those crowd-sourced code programs, which are distributed on the Web, can become on-demand code to be dynamically incorporated into new integrative geospatial applications while spatio-temporal context is changing on the fly. c. Interoperability. All independent units can effectively inter-communicate in a dynamic and loosely-coupled way for scalability, for cooperation to fulfil a certain integrative task, or for incremental development of new applications making use of existing on-demand code logic without necessarily requiring amendment. d. Portability. Programmed logic units are platform-independent and applicationneutral. They can be mashed up into all kinds of geospatial platforms and new applications, such as Standalone Geobrowsers, Web-browser-based mapping applications, or even Desktop-GIS clients.</p><p>e. Geospatial suitability and specialization. In-built capability (model, mechanisms and facilities) can cater for Geospatially specialized demands, such as contextawareness, proximity-based communication and cooperation.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>2.2</head><p>LogicGeoObject: an Architectural Model for Organizing Client-Side Geospatial Logic.</p><p>LogicGeoObject for ADIR architecture. This research proposes an architectural style named ADIR (short for Aggregating dynamics, interaction &amp; responsiveness), within which there is a core concept, Logicenabled Geospatial Objects (LogicGeoObjects for short). A LogicGeoObject is an autonomous, self-contained unit of data profile and logic, with the granularity of the mashed-up will vary from the whole application scale to individual geospatial features. For example, a LogicGeoObject can refer to a geospatial application (or a module), service, phenomenon, process, incident, activity, functionality, dynamic sensor dataset, geospatial feature-level business or functional logic, etc.</p><p>As a result, client-side geospatial sensor applications can be organized as mashable logic units, as illustrated in Fig. <ref type="figure">1</ref>. Every LogicGeoObject can autonomously access remote Web Services, and can interact with other dynamically aggregated LogicGeoObjects locally via a Message Bus.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Logic-embedded KML: an implementation for LogicGeoObjects.</head><p>This conceptual LogicGeoObjects need to be represented by an appropriate datalogic carrier, which is expected to meet the following requirements: format neutrality that is independence from any proprietary platforms or products; potential capability of coupling data (or data profile) with logic; suitable for exchanging geospatial objects; mashability with scalability; Web-based capability for accessing, communicating, deploying and exploiting; etc. Some media, such as CityGML, KML, etc., are all competent candidates, depending on the client-side environments and tasks. Here we demonstrate an implementation using KML, i.e., Logic-embedded KML (LeKML for short), encapsulating data profile and applied logic. It should be noted that this embedded logic can deal with other geospatial data types and need not be limited to KML. However KML format is convenient for presenting geospatial data. The &lt;NetworkLink&gt; element in KML can supply an effective mechanism for dynamically aggregating and activating/inactivating on-demand geospatial logic units based on spatial-temporally -aware conditions.</p><p>To make this ADIR architecture work via the implementation of LeKML, this research designs a series of LeKML facilities and mechanisms (showed in Fig. <ref type="figure">2</ref>.), including an approach to couple geospatial data profile and its corresponding applied logic; a unified and platform-neutral programmable Object &amp; Event Model for LeKML; implementing LeKML-supporting capability (LeKML Library) for geospatial platforms, i.e. parsing LeKML, executing logic procedures, and performing in-built LeKML mechanisms and regulations; etc. Runtime LeKML units can work in inter-isolated environments of different executing threads, which can avoid potential clashes between various sources of geospatial logic, and can satisfy parallelism of all LeKML units to process instant updates from respective sensor networks. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Web browser</head></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Fig. 2. Platform-neutral LogicGeoObjects: Object &amp; Event Model for bridging heterogeneities</head><p>Sentience and interoperability for LogicGeoObjects.</p><p>In addition to autonomy, mashability and the on-demand assembling mechanism, sentience and interoperability are in-built characteristics for LogicGeoObjects. This LeKML implementation can equip every runtime LogicGeoObject with an internal event pool, and provide a common Message Bus bridging all LogicGeoObjects. A LogicGeoObject can subscribe/listen to certain events of interest to get contextawareness of both its internal state (such as monitoring data mutation) and the state of their surrounding local or remote environment, so as to adapt its behavior and trigger some actions. For example, generally a LogicGeoObjects is designed to only execute (be active) under a specific geospatial conditions such as a certain geographic region and level of detail of views being in the user's viewport currently. So Geospatial context can affect linking, assembling, loading, executing and activating/inactivating LogicGeoObjects.</p><p>The Message Bus provides a flexible mechanism for plugging in/out communication to enable interoperability. There is no directly-coupling relationship among these participated LogicGeoObjects. Service discovery and event notification are all based on indirect and anonymous approach via this Message Bus, on which LogicGeoObjects just subscribe to own-interested types of events, and publish owngenerated events that may be interest to others. A key Geospatially-specialized characteristic is the location (proximity)-based event-filtering capability built in this Message Bus middleware. An event producer (LogicGeoObject) can specify a certain geographic range of area (bounded by a shape) for constraining event propagation. Only those targeted event consumers (LogicGeoObjects) locating within this area can receive notifications of this event. This kind of event types involves the parameters about valid vicinities. When dispatching events, this Message Bus can analyze these parameters and just pick up those proximity-satisfied LogicGeoObjects (whether stationary or mobile objects) for event delivery. Such proximity-based event-filtering provides a mechanism to dynamically group objects for interoperation, and can reduce the volume of event propagations to improve system performance.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Use Case and Scenario</head><p>LeKML is a purposely-designed format for a geospatial event-driven architecture catering for responsive granularized client units of Sensor Web to facilitate geospatial digital nervous systems <ref type="bibr" target="#b5">[6]</ref>. A LogicGeoObject (implemented using a LeKML file) can function as a smart real-time sensor data feed for dynamically receiving, processing and presenting sensor data. As LogicGeoObjects are autonomous, dataself-monitorable, situation-aware, event-responsive and condition-controlled, these outstanding features make LogicGeoObjects a promising architecturae pattern on building responsive client-side programs for geospatial Sensor Web.</p><p>In OGC's SWE framework <ref type="bibr" target="#b6">[7]</ref>, a SWE client can be appropriately represented by a LogicGeoObject. A LogicGeoObject can act as an autonomous message-interpreting or event-processing engine unit with compact encapsulation of logic (which listens and responds to events) and a data framework (which keeps or stores data parsed from incoming messages or generated by procedural logic dynamically). This LeKML programming pattern can sensitively monitor, interpret, analyze and process events coming from inside (e.g. internal events such as UI interactions or data changes in this local application) or messages from outside (e.g. external events such as sensor alerts or Web Service Notifications from remote sources).</p><p>The mashability of autonomous LeKML files implies that scalable numbers of SWE clients can aggregate within a GeoWeb client application or platform. From a macro perspective, mashing up LogicGeoObjects will imply the aggregation of scalable numbers of event-processing engines and sensor-feeds-consumers into a Web Mapping client, which then implies the capability for the GeoWeb to sense and interact with the real world responsively and instantly. Consequently this ADIR architecture will improve GeoWeb with the capability to browse the physical world with aggregated individual dynamics. This LogicGeoObject model can be used to program various applied logic that retrieve, receive archived or real-time sensor data from the Web, or generate modelsimulated data. Fig. <ref type="figure">3</ref> demonstrates an example employing this ADIR architecture to aggregate and correlate LogicGeoObjects reflecting dynamics, interoperation and responsiveness. Fig. <ref type="figure">3</ref>(a) illustrates an original application <ref type="bibr" target="#b7">[8]</ref> simulating automatically driving without consideration on traffic control signals, while Fig. <ref type="figure">3(b)</ref> derives from an example in the COREX <ref type="bibr" target="#b8">[9]</ref> project presenting the changes of traffic light state from sensor data. Now these two originally separate and irrelevant applications can be re-programmed with additional cooperative logic using this LogicGeoObject model to fulfill mashability and interoperability. Loose and dynamical correlation and communication can be achieved between the mobile LogicGeoObjects of the vehicles and the stationary LogicGeoObjects of the traffic lights, based on the spatio-temporal context. The Message Bus implemented in this ADIR architecture can use the proximity-based mechanism to filter event propagation, only delivering the events of traffic lights to those vehicles that are currently within a designated proximity. </p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Conclusion</head><p>This ADIR with LogicGeoObject is a geospatially-specialized architecture for organizing, communicating and aggregating geospatial logic, applications and services with decentralized granularization and scalable mashability. This architectural model can facilitate the aggregation of real-world dynamics from the geospatial Sensor Web. The LogicGeoObject is a generically-adaptive conceptual model that can be realized via various media carriers such as KML. The LeKML is expected to become a geospatially self-owned, normalized and integral facility for building mashable geospatial Logic Web.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig.</head><label></label><figDesc>Fig. 1. Evolution from mashing up data into mashing up logic generating and manipulating data dynamically</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>( a ) 3 .</head><label>a3</label><figDesc>Simulation of automatically driving (b) Proximity-filtered cooperation Fig. Aggregating and correlating LogicGeoObjects by mashing up LeKMLs</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>1. Evolution from mashing up data into mashing up logic generating and manipulating data dynamically Web Services (GeoProcessing) Logic 1 Logic 2 Logic i Logic n Data Data_1 Data_2 Data_i Data_n Sensor Networks mash up LogicGeoObjects Message Bus Object n Object 1 Object 2 Object i Logic 1 Logic 2 Logic i Logic n Common function Logic Data 1 Data 2 Data i Data n</head><label></label><figDesc></figDesc><table /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_1"><head>Geospatial Sensor Web application Google / Bing / Yahoo / …… Maps APIs (Various Proprietary Objects &amp; Events Models) Intermediate Bridging Layer (LeKML Matching Library) Integrated SWE Services Connectors (Library) LeKML LeKM 2 LeKML LeKML i HTM Neutral Layer LeKMLLibrary APIs (LeKML Objects &amp; Events Model)</head><label></label><figDesc></figDesc><table /></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">The Sensor Web: Systems of Sensor Systems</title>
		<author>
			<persName><forename type="first">T</forename><forename type="middle">L</forename><surname>Van Zyl</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Simonis</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Mcferren</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">International Journal of Digital Earth</title>
		<imprint>
			<biblScope unit="volume">2</biblScope>
			<biblScope unit="issue">1</biblScope>
			<biblScope unit="page" from="1" to="14" />
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">The Metropolis Model: a New Logic for Development of Crowdsourced Systems</title>
		<author>
			<persName><forename type="first">R</forename><surname>Kazman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><forename type="middle">M</forename><surname>Chen</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">Communications of the ACM</title>
		<imprint>
			<biblScope unit="volume">52</biblScope>
			<biblScope unit="issue">7</biblScope>
			<biblScope unit="page" from="76" to="84" />
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<monogr>
		<title level="m" type="main">OGC&apos;s OWS Integrated Client Architecture, Design, and Experience</title>
		<author>
			<persName><forename type="first">S</forename><surname>Tillman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Garnett</surname></persName>
		</author>
		<idno>Number: 05-116</idno>
		<imprint>
			<date type="published" when="2006">2006</date>
		</imprint>
	</monogr>
	<note type="report_type">OGC Document</note>
	<note>OGC Discussion Paper</note>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Development of Sensor Web Applications with Open Source Software</title>
		<author>
			<persName><forename type="first">A</forename><surname>Broering</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><forename type="middle">H</forename><surname>Jurrens</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Jirka</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Stasch</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of First Open Source GIS UK Conference</title>
				<meeting>First Open Source GIS UK Conference<address><addrLine>OSGIS</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2009">2009</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Services Mashups: the New Generation of Web Applications</title>
		<author>
			<persName><forename type="first">D</forename><surname>Benslimane</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Dustdar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Sheth</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">IEEE Internet Computing</title>
		<imprint>
			<biblScope unit="volume">12</biblScope>
			<biblScope unit="issue">5</biblScope>
			<biblScope unit="page" from="13" to="15" />
			<date type="published" when="2008">2008</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Digital Earth&apos;s Nervous System for Crisis Events: real-time Sensor Web Enablement of Volunteered Geographic Information</title>
		<author>
			<persName><forename type="first">B</forename><forename type="middle">D</forename><surname>Longueville</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Annoni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Schade</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Ostlaender</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Whitmore</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">International Journal of Digital Earth</title>
		<imprint>
			<biblScope unit="volume">5</biblScope>
			<biblScope unit="page" from="1" to="18" />
			<date type="published" when="2010">2010</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">OGC&apos;s Sensor Web Enablement: Overview and High Level Architecture</title>
		<author>
			<persName><forename type="first">M</forename><surname>Botts</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Percivall</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Reed</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Davidson</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">GeoSensor Networks</title>
		<imprint>
			<biblScope unit="page" from="175" to="190" />
			<date type="published" when="2007">2007</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<monogr>
		<ptr target="&lt;http://earth-api-samples.googlecode.com/svn/trunk/demos/drive-simulator/index.html&gt;" />
		<title level="m">Google Code Examples: Driving Simulator</title>
				<imprint/>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<monogr>
		<author>
			<persName><forename type="first">M</forename><surname>Wu</surname></persName>
		</author>
		<ptr target="&lt;http://cortex.di.fc.ul.pt/Deliverables/WP4-D13.pdf&gt;" />
		<title level="m">COREX Project Evaluation Report: CO-operating Real-time sentient objects-Architecture and Experimental evaluation</title>
				<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
