<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Galdos Systems Inc. &#187; Articles</title>
	<atom:link href="http://www.galdosinc.com/archives/category/resources/articles/feed" rel="self" type="application/rss+xml" />
	<link>http://www.galdosinc.com</link>
	<description>Powering the GeoWeb</description>
	<lastBuildDate>Mon, 30 Jan 2012 19:35:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Building the GeoWeb: Grappling with Change</title>
		<link>http://www.galdosinc.com/archives/766</link>
		<comments>http://www.galdosinc.com/archives/766#comments</comments>
		<pubDate>Fri, 08 Jan 2010 18:20:51 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/?p=766</guid>
		<description><![CDATA[<p>GeoWorld &#8195; Issue Date: October &#8211; 2009, Posted On: 11/24/2009</p> <p>In this edition of his ongoing column on Building the GeoWeb, Ron Lake talks about living in a period of constant, and accelerating, change. Ron proposes the use of &#8220;model-based thinking&#8221; as a tool <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/766">Building the GeoWeb: Grappling with Change</a></span>]]></description>
			<content:encoded><![CDATA[<p><strong>GeoWorld</strong> &#8195; Issue Date: October &#8211; 2009, Posted On: 11/24/2009</p>
<p>In this edition of his ongoing column on Building the GeoWeb, Ron Lake talks about living in a period of constant, and accelerating, change. Ron proposes the use of &#8220;model-based thinking&#8221; as a tool for <a title="Grappling with Change - an article by Ron Lake" href="http://www.geoplace.com/ME2/dirmod.asp?sid=DA72DA013599412F85B2FD29498DD7E3&amp;nm=a+test&amp;type=MultiPublishing&amp;mod=PublishingTitles&amp;mid=2F0B36C074B04B3DAACB3F3733414366&amp;tier=4&amp;id=2D3DAD0E238041A2B9CE1F2CCBAD666A" target="_blank">Grappling with Change</a> and a way to better plan and forecast the needs of our urban environments.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/766/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>V1 Magazine: Digital Cities, SDI and the GeoWeb</title>
		<link>http://www.galdosinc.com/archives/762</link>
		<comments>http://www.galdosinc.com/archives/762#comments</comments>
		<pubDate>Sat, 12 Dec 2009 23:56:04 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/?p=762</guid>
		<description><![CDATA[<p>Monday, 09 November 2009</p> <p>Read Ron Lake&#8217;s column in V1 Magazine &#8211; Digital Cities, SDI and the GeoWeb discussing the implications of moving towards Digital Cities.  Ron explores what a Digital City might be, the role of SDIs and the GeoWeb, and the impact of information <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/762">V1 Magazine: Digital Cities, SDI and the GeoWeb</a></span>]]></description>
			<content:encoded><![CDATA[<p>Monday, 09 November 2009</p>
<p>Read Ron Lake&#8217;s column in <a title="V1 Magazine" href="http://www.vector1media.com/" target="_blank">V1 Magazine</a> &#8211; <a title="Digital Cities, SDI and the GeoWeb - an article in V1 Magazine by Ron Lake" href="http://www.vector1media.com/articles/columns/9915-digital-cities-sdi-and-the-geoweb" target="_blank" class="broken_link">Digital Cities, SDI and the GeoWeb</a> discussing the implications of moving towards Digital Cities.  Ron explores what a Digital City might be, the role of SDIs and the GeoWeb, and the impact of information technology on urban planning and environments.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/762/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoWorld: Key Connections: Geography, Politics and the Economy</title>
		<link>http://www.galdosinc.com/archives/612</link>
		<comments>http://www.galdosinc.com/archives/612#comments</comments>
		<pubDate>Fri, 29 May 2009 23:49:18 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/?p=612</guid>
		<description><![CDATA[<p>Issue Date: April &#8211; 2009, Posted On: 5/1/2009</p> <p>Read Ron Lake&#8217;s article discussing the interconnectedness of global resources, and whether and how geography might impact the economic and political success of nation states.</p> <p>The full article is available in GeoWorld&#8217;s Building the GeoWeb column for April 2009.</p> <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/612">GeoWorld: Key Connections: Geography, Politics and the Economy</a></span>]]></description>
			<content:encoded><![CDATA[<p>Issue Date: April &#8211; 2009, Posted On: 5/1/2009</p>
<p>Read Ron Lake&#8217;s article discussing the interconnectedness of global resources, and whether and how geography might impact the economic and political success of nation states.</p>
<p>The full article is available in GeoWorld&#8217;s <a href="http://www.geoplace.com/ME2/dirmod.asp?sid=&amp;nm=&amp;type=Publishing&amp;mod=Publications%3A%3AArticle&amp;mid=8F3A7027421841978F18BE895F87F791&amp;tier=4&amp;id=B8C4E94C011643D7945E676B2E56D4D0" target="_blank">Building the GeoWeb</a> column for April 2009.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/612/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>V1 Magazine: GeoWeb &#8211; Shaping Geographic Awareness</title>
		<link>http://www.galdosinc.com/archives/561</link>
		<comments>http://www.galdosinc.com/archives/561#comments</comments>
		<pubDate>Mon, 02 Mar 2009 22:29:40 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/561</guid>
		<description><![CDATA[<p> Wednesday, 04 February 2009 </p> <p> Ron Lake&#39;s column in V1 Magazine discusses Google Ocean and the visualization framework that it provides. At the same time, Mr. Lake points out the need to take the next step for building <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/561">V1 Magazine: GeoWeb &#8211; Shaping Geographic Awareness</a></span>]]></description>
			<content:encoded><![CDATA[<p>
Wednesday, 04 February 2009
</p>
<p>
Ron Lake&#39;s column in V1 Magazine discusses Google Ocean and the visualization framework that it provides. At the same time, Mr. Lake points out the need to take the next step for building out the GeoWeb for oceans and providing a middle tier data integration infrastructure.
</p>
<p>
Read the full column from V1 Magazine at <a href="http://www.vector1media.com/article/column/geoweb-%11-shaping-geographic-awareness/" target="_blank" class="broken_link">http://www.vector1media.com/article/column/geoweb-%11-shaping-geographic-awareness/</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/561/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoWorld: Can the GeoWeb Rescue the Economy?</title>
		<link>http://www.galdosinc.com/archives/558</link>
		<comments>http://www.galdosinc.com/archives/558#comments</comments>
		<pubDate>Wed, 25 Feb 2009 22:42:28 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/558</guid>
		<description><![CDATA[<p> Issue Date: January &#8211; 2009, Posted On: 2/1/2009 </p> <p> According to Ron Lake, many people believe we now stand on the edge of an economic precipice, a state unknown in the lives of most of us&#8212;and perhaps in <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/558">GeoWorld: Can the GeoWeb Rescue the Economy?</a></span>]]></description>
			<content:encoded><![CDATA[<p>
Issue Date: January &#8211; 2009, Posted On: 2/1/2009
</p>
<p>
According to Ron Lake, many people believe we now stand on the edge of an economic precipice, a state unknown in the lives of most of us&mdash;and perhaps in the history of the modern world. What&#39;s most telling is the inability of anyone to say what happens next.
</p>
<p>
Read the full article in GeoWorld&#39;s <a href="http://www.geoplace.com/ME2/dirmod.asp?sid=&amp;nm=&amp;type=Publishing&amp;mod=Publications%3A%3AArticle&amp;mid=8F3A7027421841978F18BE895F87F791&amp;tier=4&amp;id=B5AC29EAD20348F89232CBA5432F1010" target="_blank">Building the GeoWeb</a> column for January 2009.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/558/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A View from Over There &#8211; India and NSDI</title>
		<link>http://www.galdosinc.com/archives/556</link>
		<comments>http://www.galdosinc.com/archives/556#comments</comments>
		<pubDate>Thu, 19 Feb 2009 19:08:32 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/556</guid>
		<description><![CDATA[<p> By Joe Francica , Editor-in-Chief and Vice Publisher, Directions Magazine </p> <p> February 19, 2009 </p> <p> An article in the February 2009 edition of Directions Magazine reported on the Map World Forum, held in Hyderabad, India. Ron Lake, <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/556">A View from Over There &#8211; India and NSDI</a></span>]]></description>
			<content:encoded><![CDATA[<p>
By Joe Francica , Editor-in-Chief and Vice Publisher, Directions Magazine
</p>
<p>
February 19, 2009
</p>
<p>
An article in the February 2009 edition of Directions Magazine reported on the Map World Forum, held in Hyderabad, India. Ron Lake, president of Galdos Systems, was one of the speakers at the event, and is quoted in the article.
</p>
<p>
The full article is available on the Directions Magazine website at <a href="http://www.directionsmag.com/article.php?article_id=3042&amp;trv=1" target="_blank">http://www.directionsmag.com/article.php?article_id=3042&amp;trv=1</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/556/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Backbone Magazine: Map your world &#8211; the GeoWeb</title>
		<link>http://www.galdosinc.com/archives/550</link>
		<comments>http://www.galdosinc.com/archives/550#comments</comments>
		<pubDate>Thu, 20 Nov 2008 22:46:59 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/550</guid>
		<description><![CDATA[<p> 17 November 2008 </p> <p> The cover story of the November/December 2008 issue of Backbone magazine featured an article by Ian Harvey: &#34;The Geoweb is remaking mapping, the Web and perhaps your own corporate Web site&#34; based on an <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/550">Backbone Magazine: Map your world &#8211; the GeoWeb</a></span>]]></description>
			<content:encoded><![CDATA[<p>
17 November 2008
</p>
<p>
The cover story of the November/December 2008 issue of Backbone magazine featured an article by Ian Harvey: &quot;The Geoweb is remaking mapping, the Web and perhaps your own corporate Web site&quot; based on an interview with Ron Lake.
</p>
<p>
The <a href="http://www.backbonemag.com/Magazine/CoverStory_11170801.asp" target="_blank">full article</a> is available on Backbone&#39;s website.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/550/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoWorld: What&#8217;s an SDI? Can It Support Emergency Management?</title>
		<link>http://www.galdosinc.com/archives/549</link>
		<comments>http://www.galdosinc.com/archives/549#comments</comments>
		<pubDate>Tue, 18 Nov 2008 23:50:49 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/549</guid>
		<description><![CDATA[<p> Issue Date: October &#8211; 2008, Posted On: 11/1/2008 </p> <p> If one looks at most SDIs today, notes Ron Lake, they heavily emphasize a &#34;librarian view&#34; of the software-infrastructure element (i.e., the primary points of focus are metadata collection <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/549">GeoWorld: What&#8217;s an SDI? Can It Support Emergency Management?</a></span>]]></description>
			<content:encoded><![CDATA[<p>
Issue Date: October &#8211; 2008, Posted On: 11/1/2008
</p>
<p>
If one looks at most SDIs today, notes Ron Lake, they heavily emphasize a &quot;librarian view&quot; of the software-infrastructure element (i.e., the primary points of focus are metadata collection and discovery). As a result, they&rsquo;re inappropriate to support many of the use cases for which such an infrastructure might be deployed.
</p>
<p>
Read the full article in GeoWorld&#39;s <a href="http://www.geoplace.com/ME2/dirmod.asp?sid=119CFE3ACE2A48319AA7DE6A39B80D66&amp;nm=News&amp;type=Publishing&amp;mod=Publications%3A%3AArticle&amp;mid=8F3A7027421841978F18BE895F87F791&amp;tier=4&amp;id=00B4D3CF6F204BB1BB43CA2AE8F47786" target="_blank">Building the GeoWeb</a> column for October 2008.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/549/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoWorld: Exploring Schema Constructs in KML</title>
		<link>http://www.galdosinc.com/archives/539</link>
		<comments>http://www.galdosinc.com/archives/539#comments</comments>
		<pubDate>Mon, 01 Sep 2008 21:32:52 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/539</guid>
		<description><![CDATA[<p> Issue Date: August &#8212; 2008, Posted On: 9/1/2008</p> <p>Building the GeoWeb by Ron Lake </p> <p> This is Part II in a series of &#8220;Building the GeoWeb&#8221; columns comparing the schema constructs found in Keyhole Markup Language (KML) and <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/539">GeoWorld: Exploring Schema Constructs in KML</a></span>]]></description>
			<content:encoded><![CDATA[<p>
Issue Date: August &#8212; 2008, Posted On: 9/1/2008</p>
<p>Building the GeoWeb by Ron Lake
</p>
<p>
This is Part II in a series of &ldquo;Building the GeoWeb&rdquo; columns comparing the schema constructs found in Keyhole Markup Language (KML) and Geography Markup Language (GML). In the first column (see &ldquo;Exploring Schema Constructs in KML,&rdquo; <i>GeoWorld</i>, May 2008, page 20), I introduced a reference example of an aircraft FlightLine and discussed its possible realization in KML. In this final installment, I&rsquo;ll look at the same FlightLine, but in GML.</p>
<p>It should be noted that GML doesn&rsquo;t contain a schema-defining mechanism within GML itself, but rather uses another schema language. At the present time (and for the foreseeable future), this is the W3C XML schema, but DTD and RDF schema were used for this purpose in GML 1.0. In the future, GML might be seen in Relax or some other schema language not yet defined.</p>
<p>Schemas play a much deeper role in GML than in KML. The following is a possible GML Application Schema for the FlightLine object introduced in the previous column:
</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;schema</span> <span style="color: #000066;">targetNamespace</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org&quot;</span> <span style="color: #000066;">xmlns:abc</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org&quot;</span> </span><br />
<span style="color: #009900;"> &nbsp; &nbsp;<span style="color: #000066;">xmlns:gml</span>=<span style="color: #ff0000;">&quot;http://schemas.opengis.org/gml&quot;</span> <span style="color: #000066;">xmlns:xs</span>=<span style="color: #ff0000;">&quot;http://www.w3.org/2001/XMLSchema&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;FlightLine&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;abc:FlightLineType&quot;</span> <span style="color: #000066;">substitutionGroup</span>=<span style="color: #ff0000;">&quot;gml:_Feature&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;complexType</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;FlightLineType&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;complexContent<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;extension</span> <span style="color: #000066;">base</span>=<span style="color: #ff0000;">&quot;gml:AbstractFeatureType&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;sequence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;classification&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;abc:classificationType&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;operator&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;xs:string&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightNumber&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;xs:int&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;departsFrom&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;xs:string&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;arrivesAt&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;xs:string&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightPath&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;gml:CurvePropertyType&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightZoneRight&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;gml:CurvePropertyType&quot;</span> <span style="color: #000066;">minOccurs</span>=<span style="color: #ff0000;">&quot;0&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightZoneLeft&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;gml:CurvePropertyType&quot;</span> <span style="color: #000066;">minOccurs</span>=<span style="color: #ff0000;">&quot;0&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/sequence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/extension<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/complexContent<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/complexType<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;simpleType</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;classificationType&quot;</span> <span style="color: #000066;">base</span>=<span style="color: #ff0000;">&quot;xs:string&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;enumeration</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;commercial_scheduled&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;enumeration</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;commercial_charter&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;enumeration</span> <span style="color: #000066;">value</span>=<span style="color: #ff0000;">&quot;private&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/simpleType<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/schema<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>
&nbsp;
</p>
<p>Such a schema definition could be referenced in KML (via ExtendedData) or otherwise support GML instances that would look like the following:</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:FlightLine</span> <span style="color: #000066;">gml:id</span>=<span style="color: #ff0000;">&quot;BA85&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:classification<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>commercial scheduled<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:classification<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>British Airways<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:flightNumber<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>85<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:flightNumber<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:departsFrom<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>London<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:departsFrom<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:arrivesAt<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Vancouver<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:arrivesAt<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:flightPath<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:LineString</span> <span style="color: #000066;">srsName</span>=<span style="color: #ff0000;">&quot;urn:x-ogp:def:geodetic-crs:EPSG:4202&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:posList<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>51.5 0.1 49.3338 -123.0261<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:posList<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:LineString<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:flightPath<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:FlightLine<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>Note that in the GML definition:<br />
&bull; Everything is defined in a separate namespace<br />
&bull; FlightLine is an independent object (feature)<br />
&bull; LineString lives in a specific coordinate system<br />
&bull; The role (flightPath) of the LineString in relation to the FlightLine is specified in the schema<br />
&bull; An enumerated type is used to describe the FlightLine &ldquo;classification&rdquo;</p>
<p><strong>Adding Complexity</strong></p>
<p>This is, of course, a simple example, but what if it becomes more complex? Suppose you have a list of city airports, and you wish to replace the arrivesAt and departsFrom property values by the airports rather than the cities, and then describe these airports by their geodetic location. </p>
<p>In GML, the first step would be to define a new schema for Airports and related objects. Because this vocabulary might be controlled by another organization, another namespace is used. The GML schema might look like the following:</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;Airport&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;def:AirportType&quot;</span> <span style="color: #000066;">substitutionGroup</span>=<span style="color: #ff0000;">&quot;gml:_Feature&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;complexType</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;AirportType&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;complexContent<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;extension</span> <span style="color: #000066;">base</span>=<span style="color: #ff0000;">&quot;gml:AbstractFeatureType&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;sequence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;code&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;def:airportCodes&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;operator&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;xs:string&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;city&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;xs:string&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;location&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;gml:PointPropertyType&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/sequence<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/extension<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/complexContent<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/complexType<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>
The FlightLine schema now is changed to use reference pointers to the Airports, and a new &ldquo;city&rdquo; property is added. The departsFrom and arrivesAt property schemas now become:<br />
</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;departsFrom&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;def:simpleReferenceType&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;complexType</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;simpleReferenceType&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;attribute</span> <span style="color: #000066;">ref</span>=<span style="color: #ff0000;">&quot;xlink:href&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/complexType<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>
An instance now looks like the following:
</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:FlightLine</span> <span style="color: #000066;">gml:id</span>=<span style="color: #ff0000;">&quot;BA85&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:classification<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>commercial scheduled<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:classification<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>British Airways<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:flightNumber<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>85<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:flightNumber<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:departsFrom</span> <span style="color: #000066;">xlink:href</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org/worldairports#LHR&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:arrivesAt</span> <span style="color: #000066;">xlink:href</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org/worldairports#YVR&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:flightPath<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:LineString</span> <span style="color: #000066;">srsName</span>=<span style="color: #ff0000;">&quot;urn:x-ogp:def:geodetic-crs:EPSG:4202&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:posList<span style="color: #000000; font-weight: bold;">&gt;</span></span></span> … coordinates … <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:posList<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:LineString<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:flightPath<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:FlightLine<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:Airport</span> <span style="color: #000066;">gml:id</span>=<span style="color: #ff0000;">&quot;LHR&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:code<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>LHR<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:code<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>BAA<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>London<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:location<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:Point</span> <span style="color: #000066;">srsName</span>=<span style="color: #ff0000;">&quot;urn:x-ogp:def:geodetic-crs:EPSG:4326&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:pos<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>51.487222 -0.466667<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:pos<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:Point<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:location<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:Airport<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:Airport</span> <span style="color: #000066;">gml:id</span>=<span style="color: #ff0000;">&quot;YVR&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:code<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>LHR<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:code<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Vancouver International Airport Authority<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Vancouver<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:city<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;def:location<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:Point</span> <span style="color: #000066;">srsName</span>=<span style="color: #ff0000;">&quot;urn:x-ogp:def:geodetic-crs:EPSG:4326&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;gml:pos<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>49.193889 -123.184444<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:pos<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/gml:Point<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:location<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/def:Airport<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>How would this be done in KML? A user would need to create Placemarks for the Airports as well as a new schema definition for Airport:</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Document<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Schema</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;Airport&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;code&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;operator&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;city&quot;</span><span style="color: #000000; font-weight: bold;">/&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Schema<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Document<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Placemark</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;YVR&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ExtendedData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SchemaData</span> <span style="color: #000066;">schemaURL</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org/airports.kml#Airport&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;code&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>YVR<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;operator&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Vancouver Airport Authority<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;city&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Vancouver<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SchemaData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ExtendedData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Point<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;coordinates<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>-123.184444,49.193889<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/coordinates<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Point<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Placemark<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>
&nbsp;
</p>
<p>
Note, however, that I removed the properties departsFrom and arrivesAt from the schema, because there&rsquo;s no support in SimpleField for URLs. Furthermore, the link in NetworkLink is a URL, and one can expect that any KML consumer must dereference (fetch) the URL when seen&mdash;whether this makes sense or not.
</p>
<p>
It can&rsquo;t be known from the schema for this ExtendedData, in this Placemark instance, that there&rsquo;s a property arrivesAt nor departsFrom&mdash;these aren&rsquo;t part of the Placemark&rsquo;s definition. It should be clear that a user can&rsquo;t talk about a FlightLine or Airport Placemark at all&mdash;although they may associate ExtendedData information with particular Placemark instances.
</p>
<p>
<strong>Representation and Presentation<br />
</strong><br />
In KML, users can&rsquo;t create geographic objects as they can in GML, but they can use the schema construct to add user-defined attributes to objects for visualization in an Earth browser such as Google Earth. </p>
<p>Also note that in GML, one can define a library of data types that can be further extended using extension or composition, whereas KML only allows the user-defined data embedded in a KML document as a whole. </p>
<p>KML elements aren&rsquo;t intended to be used in the content of user-defined elements. Most KML elements are required to appear in certain context; they&rsquo;re not allowed to be used anywhere else. </p>
<p>Although KML types can&rsquo;t be used to describe a user&rsquo;s elements, they can have their own vocabularies (described by something other than KML) embedded in KML. Such embedded XML is usually ignored by the KML processor, with the exception of templates used mainly for documentation in balloons.</p>
<p>This discussion isn&rsquo;t criticism of either language, but it reflects the different objectives of the two languages: GML is intended primarily for geographic data representation, and KML is intended for geographic data presentation.
</p>
<p>
Read the article on their website: <a href="http://www.geoplace.com/ME2/dirmod.asp?sid=119CFE3ACE2A48319AA7DE6A39B80D66&amp;nm=News&amp;type=Publishing&amp;mod=Publications%3A%3AArticle&amp;mid=8F3A7027421841978F18BE895F87F791&amp;tier=4&amp;id=A39C23229FA0427E88206EC17EEF7E9F" target="_blank">GeoWorld</a>.
</p>
<p>
Download the PDF file:&nbsp;&nbsp;<a id="p540" rel="attachment" href="http://www.galdosinc.com/?attachment_id=540" title="GeoWorld - Exploring Schema Constructs in KML August 2008.pdf"></a><a id="p541" href="http://www.galdosinc.com/wp-content/uploads/2008/09/GeoWorld%20-%20Exploring%20Schema%20Constructs%20in%20KML%20August%202008.pdf">GeoWorld &#8211; Exploring Schema Constructs in KML August 2008.pdf</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/539/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GeoWorld: Exploring Schema Constructs in KML</title>
		<link>http://www.galdosinc.com/archives/523</link>
		<comments>http://www.galdosinc.com/archives/523#comments</comments>
		<pubDate>Sun, 01 Jun 2008 17:25:27 +0000</pubDate>
		<dc:creator>Galdos</dc:creator>
				<category><![CDATA[Articles]]></category>

		<guid isPermaLink="false">http://www.galdosinc.com/archives/523</guid>
		<description><![CDATA[<p> Issue Date: May &#8211; 2008 </p> <p> Building the GeoWeb by Ron Lake </p> <p>Many languages, including Keyhole Markup Language (KML) and Geography Markup Language (GML), use schema constructs to express a data model. &#34;Building the GeoWeb&#34; will explore <span style="color:#777"> . . . &#8594; Read More: <a href="http://www.galdosinc.com/archives/523">GeoWorld: Exploring Schema Constructs in KML</a></span>]]></description>
			<content:encoded><![CDATA[<p>
Issue Date: May &#8211; 2008
</p>
<p>
Building the GeoWeb by Ron Lake
</p>
<div align="left">
</div>
<div align="left">
<hr />
</div>
<p>Many languages, including Keyhole Markup Language (KML) and Geography Markup Language (GML), use schema constructs to express a data model. &quot;Building the GeoWeb&quot; will explore the nature of these constructs as well as their role in each language to help researchers and application developers deploy these standards to their best advantage.</p>
<p>This first column will deal with KML, and a future column will tackle GML. To motivate and unify the discussion, I&rsquo;ll employ a FlightLine object example that represents information about and associated with the path of a commercial aircraft.&nbsp;</p>
<p align="left">
<strong>KML 2.2</strong>
</p>
<p align="left">
Schemas in KML 2.2 are defined by the <code class="codecolorer text dawn"><span class="text">&lt;Schema&gt;</span></code> element, which has the following syntax:
</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Schema</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;ID&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;string&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><span style="color: #808080; font-style: italic;">&lt;!-- string --&gt;</span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Schema<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>Therefore, I could define a FlightLine <code class="codecolorer text dawn"><span class="text">&lt;Schema&gt;</span></code> that assumes all of the properties are of simple type (e.g., classification (commercial scheduled/commercial charter/private), airline, and departure and arrival cities) and write the following:</p>
<p><div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Schema</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;FlightLine&quot;</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;p11&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;classification&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;operator&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;int&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightNumber&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;departsFrom&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;arrivesAt&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Schema<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
</p>
<p align="left">
This is consistent with KML&rsquo;s objective to support the visualization of geographic data. But note two restrictions in this current schema construct:
</p>
<p align="left">
1. No complex types.
</p>
<p align="left">
2. No enumerated types defined by the schema builder (see &quot;classification&quot; in the example).
</p>
<p align="left">
<strong>Placemarks</strong>
</p>
<p align="left">
Now look at how this is used in a KML instance. The <code class="codecolorer text dawn"><span class="text">&lt;Schema&gt;</span></code> element is the child of <code class="codecolorer text dawn"><span class="text">&lt;Document&gt;</span></code>.
</p>
<p align="left">
In many cases, this same Document would contain a related Placemark, but because I want to keep the definitions separate to explore the idea of a KML vocabulary, I&rsquo;ll place the schema in a Document containing no Placemarks, as follows:
</p>
<p align="left">
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;kml</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://earth.google.com/kml/2.2&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Document</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;FlightLineSchemaDef&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Schema</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;FlightLine&quot;</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;FlightLine&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;classification&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;operator&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;int&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightNumber&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;departsFrom&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleField</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;arrivesAt&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>…<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/displayName<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleField<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Schema<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Document<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/kml<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
</p>
<p align="left">
This file (document) then can be located on the Web, for example, at www.aviation.org/aviation.kml, referencing the contained &lt;Schema&gt; using www.aviation.org/aviation.kml#FlightLine. This can be done from any KML file that references the <code class="codecolorer text dawn"><span class="text">&lt;Schema&gt;</span></code> using the <code class="codecolorer text dawn"><span class="text">&lt;ExtendedData&gt;</span></code>|<code class="codecolorer text dawn"><span class="text">&lt;SchemaData&gt;</span></code> construct.
</p>
<p align="left">
For this, I can write something like the following:
</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;kml</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://earth.google.com/kml/2.2&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Placemark</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;BA85&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Flight BA-85<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ExtendedData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SchemaData</span> <span style="color: #000066;">schemaUrl</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org/aviation.kml#FlightLine&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;classification&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>commercial airline<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;operator&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>British Airways<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;flightNumber&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>85<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;departsFrom&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>London<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;SimpleData</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;arrivesAt&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>Vancouver<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SimpleData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/SchemaData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ExtendedData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LineString<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;coordinates<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>0.1,51.5 -123.0261,49.3338<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/coordinates<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/LineString<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Placemark<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/kml<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p align="left">
The schema-defined information (ExtendedData) now is contained in a Placemark. But the following should be noted:
</p>
<p>
<br />
1. There&rsquo;s no namespace assigned to the definitions&mdash;just a location for the schema. Moving the schema somewhere else could mean something different, or not&mdash;you can&rsquo;t tell.</p>
<p>2. The role or meaning of the LineString in the FlightLine isn&rsquo;t described. You don&rsquo;t know whether it describes the path of the aircraft or a bounding limit on the flight zone. This could be improved by adding descriptive ID values (e.g., id = &quot;flightPath&quot;, id = &quot;flightLimitRight&quot;, id = &quot;flightLimitLeft&quot;, etc.), but such items can&rsquo;t be defined by the schema.</p>
<p>3. There&rsquo;s no way to say that LineString belongs in the FlightLine definition, but Point or Polygon don&rsquo;t belong. These aren&rsquo;t part of the schema definition.</p>
<p>4. The coordinate reference system can&rsquo;t be changed&mdash;there&rsquo;s only the default coordinate reference system urn:x-ogp:def:geodetic-crs:EPSG:4326 with the latitude and longitude reversed relative to EPSG4326 (i.e., (long, lat) rather than (lat, long)).</p>
<p>5. There&rsquo;s no way to add new geometries to KML to accommodate special curves such as Loxodromes or Geodesics.</p>
<p><strong><br />
External Schemas</strong></p>
<p>The KML <code class="codecolorer text dawn"><span class="text">&lt;ExtendedData&gt;</span></code> element also allows users to add content that isn&rsquo;t part of KML. For example, the following KML file includes the above properties as child elements of <code class="codecolorer text dawn"><span class="text">&lt;ExtendedData&gt;</span></code>:&nbsp;
</p>
<div class="codecolorer-container xml dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td><div class="xml codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;kml</span> <span style="color: #000066;">xmlns</span>=<span style="color: #ff0000;">&quot;http://earth.google.com/kml/2.2&quot;</span> <span style="color: #000066;">xmlns:abc</span>=<span style="color: #ff0000;">&quot;http://www.aviation.org/&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Placemark</span> <span style="color: #000066;">id</span>=<span style="color: #ff0000;">&quot;BA85&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Flight BA-85<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;ExtendedData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:classification<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>commercial airline<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:classification<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>British Airways<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:operator<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:flightNumber<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>85<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:flightNumber<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:departsFrom<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>London<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:departsFrom<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;abc:arrivesAt<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Vancouver<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/abc:arrivesAt<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/ExtendedData<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;LineString<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;coordinates<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>0.1,51.5 -123.0261,49.3338<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/coordinates<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/LineString<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Placemark<span style="color: #000000; font-weight: bold;">&gt;</span></span></span><br />
&nbsp; &nbsp; <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/kml<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></div></td></tr></tbody></table></div>
<p>
&nbsp;<br />
But the content of <code class="codecolorer text dawn"><span class="text">&lt;ExtendedData&gt;</span></code> isn&rsquo;t KML nor defined by KML; it&rsquo;s anything written in the namespace with prefix abc. KML doesn&rsquo;t say anything about what&rsquo;s to appear in the ExtendedData element, except that it&rsquo;s XML and in a different namespace than KML.
</p>
<p align="left">
<strong>&quot;Place-Centric&quot;</strong>
</p>
<p align="left">
It should be apparent that KML provides flexible mechanisms for transporting data instances and rather limited ones for defining data models. This isn&rsquo;t a criticism of KML, and it fits nicely into its role as the visualization language for Internet geography.</p>
<p>KML allows users to refer to external schema definitions (e.g., GML application schemas) and provides a restricted schema notion to describe the data associated with a visualization. KML is &quot;place-centric&quot; and allows users to associate data elements with a place. It would be wrong to think of KML as a data description language or talk of KML vocabularies. 
</p>
<p>
Read the article on their website: <a href="http://208.106.162.71/ME2/dirmod.asp?sid=119CFE3ACE2A48319AA7DE6A39B80D66&amp;nm=News&amp;type=Publishing&amp;mod=Publications%3A%3AArticle&amp;mid=8F3A7027421841978F18BE895F87F791&amp;tier=4&amp;id=B83697D8D93742D5BDAD56ABF425B766" target="_blank">GeoWorld</a>.
</p>
<p>
Download the PDF file: <a id="p524" href="http://www.galdosinc.com/wp-content/uploads/2008/06/GeoWorld%20-%20Exploring%20Schema%20Constructs%20in%20KML%20May%202008.pdf">GeoWorld &#8211; Exploring Schema Constructs in KML May 2008.pdf</a>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.galdosinc.com/archives/523/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

