3.2 Open GeoSpatial Concorcium (OGC)
3.2.1 OGC Standartları
3.2.1.6 Styled Layer Descriptor (SLD)
3.2.1.6.3 Polygon SLD
Alan veri tipindeki verilerin görselleştirilmesi için dolgu rengi, kenarlıklar ve taramalar gibi özellikleri tanımlayan öznitelik verileri bulunmaktadır. En basit anlamda alan verisini görselleştiren SLD dosyası aşağıda verilmiştir (GeoServer-Polygon SLD, 2013). <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Fill> <CssParameter name="fill">#000080</CssParameter> </Fill> </PolygonSymbolizer> </Rule> </FeatureTypeStyle> <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Fill> <CssParameter name="fill">#000080</CssParameter> </Fill> </PolygonSymbolizer> </Rule> </FeatureTypeStyle>
SLD dosyası içerisinde alan verisini tanımlayan öznitelik verileri Çizelge 3.7’de gösterilmektedir.
Çizelge 3.7.Polygon SLD parametreleri
Özellik Tanım Değerler ve örnekler
Fill Dolgu rengi <CssParameter name="fill">color code</CssParameter>
<CssParameter name="fill-opacity">0.5</CssParameter>
Stroke Kenarlık rengi-
kalınlığı
<CssParameter name="stroke">#333333</CssParameter> <CssParameter name="stroke-width">5</CssParameter>
Label Nokta etiketi <ogc:PropertyName>any field</ogc:PropertyName>
Font Etiket fontu
<CssParameter name="font-family">Arial</CssParameter> <CssParameter name="font-size">12</CssParameter> <CssParameter name="font-style">normal</CssParameter> <CssParameter name="font-weight">bold</CssParameter>
AnchorPoint
Etiket yerleşimi <AnchorPointX>Value</AnchorPointX>
Displacement <DisplacementX>Value</DisplacementX>
Vendor Tekrarlı yerleşim
<VendorOption name="autoWrap">60</VendorOption> <VendorOption
name="maxDisplacement">150</VendorOption>
Rotation Etiket yönü <Rotation>Value</Rotation>
3.2.1.6.4 Raster SLD
Raster verilerin tanımlanması için renk aralıklarının belirlendiği SLD dosyası Çizelge 3.8’de verilen öznitelik verisini taşımaktadır. En basit anlamda raster SLD dosyası aşağıda verilmiştir (GeoServer-Raster SLD, 2013).
<FeatureTypeStyle> <Rule>
<RasterSymbolizer> <ColorMap>
<ColorMapEntry color="#008000" quantity="70" /> <ColorMapEntry color="#663333" quantity="256" /> </ColorMap>
</RasterSymbolizer> </Rule>
</FeatureTypeStyle>
Raster veri tipinin tanımlanması için oluşturulacak dosyada olması gereken parametreler ve örnek gösterimleri Çizelge 3.8’de verilmiştir.
Çizelge 3.8.Raster SLD parametreleri Özellik Tanım Değerler ve örnekler
ColorMap Dolgu rengi
<ColorMapEntry color="#0000FF" quantity="150" /> <ColorMapEntry color="#FFFF00" quantity="200" /> <ColorMapEntry color="#FF0000" quantity="250" />
3.2.1.7 OpenLayers
Openlayers web sayfalarına dinamik haritalar koymak için kullanılan JavaScript kütüphanesidir. Herhangi bir kaynaktan harita veya harita işaretçileri yükleyebilmektedir. İleri düzeyde çok amaçlı Coğrafi Bilgi Sistemleri oluşturmak için geliştirilmiştir. Tamamen ücretsiz olan OpenLayers JavaScript Kütüphanesi açık kaynak kodlu olarak kullanılmaktadır.
OpenLayers, herhangi bir sunucu taraflı uygulamaya bağımlı olarak çalışmamaktadır. Google Maps API’ye benzer olarak gelişmiş coğrafi uygulamalar içeren web sayfaları yapmak için JavaScript API Kütüphanesi sağlamaktadır (OpenLayers – Homepage, 2013).
OpenLayers ana nesnesi bir haritadır. Harita raster ve vektör veri içeren çok sayıda katmanları gösterebilmektedir. Her bir tabaka ise ilişkili bulunduğu veriyi kaynağından alıp harita üzerine aktarmaktadır. Ek olarak harita kontrolleri sayesinde (yaklaştırma, kaydırma, tümünü görme, vb.) katmanlar ile harita ilişkilendirilerek web sayfalarında görüntülenmektedir (Perez, 2012).
3.2.2 OGC Requests
OGC istekleri, coğrafi veri setlerinin web servisleri ile yayınlandığı sunucuya istemci tarafından gönderilen, web uygulamalarını başlatmak, veri elde etmek, verileri farklı formatlarda göstermek ve web üzerinde gösterilecek haritaların parametrelerini belirlemek amacı ile kullanılan ve URL şeklinde sunucuya gönderilen söz dizimleridir. Web uygulamalarındaki tüm karakteristik özellikleri belirlediğinden dolayı en önemli görev sunucu tarafından gönderilen isteklerdir.
WMS tarafından tanımlanan 4 adet istek bulunmaktadır. Bu istekler WMS servislerinin uygulamalarını ve kullanımını HTTP yolu ile belirlemektedir. GetMap, GetCapabilities, GetLegendGraphic ve GetFeatureInfo olarak adlandırılan istekler, HTTP yoluyla sunucuya gönderilerek istenilen işlemler gerçekleştirilmiş olmaktadır.
Belirtilen istekler genellikle çeşitli uygulamalar tarafından oluşturulmaktadır. Genellikle çok sayıda parametre içeren bu isteklerin manuel olarak oluşturulması kullanıcı açısından birçok zorlukları ortaya çıkartmaktadır. Ayrıca bu isteklerin oluşturulması için sunucuya ait birçok parametrenin (ip, layers, wms/wfs versiyon, vb.,) bilinmesi gerekmektedir. Bu nedenle hem coğrafi veri sunucusu yazılımları hem de çeşitli web uygulamaları yolu ile isteklere ilişkin URL linkleri oluşturulabilmektedir.
3.2.2.1 GetMap
GetMap isteği, istemci tarafından gösterilecek haritanın özelliklerini belirleyecek parametreleri tanımlayan URL söz dizimidir. Belirlenen parametreler HTTP GET isteği ile sunucuya gönderilmektedir (Davis, 2007). Gösterilecek olan haritanın özelliklerini belirleyen GetMap isteği ile istemci bilgisayarlarından sunucu bilgisayarlara gelen istek değerlendirilerek harita hazırlanmaktadır. GetCapabilities isteğine göre çok daha uzun bir URL oluşturan GetMap isteği genellikle coğrafi veri sunucusu yazılımları ile oluşturulmaktadır. Çizelge 3.9’da URL içerisinde belirtilmesi gereken parametreler verilmiştir.
Çizelge 3.9.GetMap parametreleri Request parameter Mandatory/ Optional Description
VERSION=1.3.0 M Request version.
REQUEST=GetMap M Request name.
LAYERS=layer_list M layers
STYLES=style_list M styles
CRS=namespace:identifier M Coordinate reference system.
BBOX=minx,miny,maxx,maxy M Bounding box
WIDTH=output_width M Width in pixels
HEIGHT=output_height M Height in pixels
FORMAT=output_format M Output format of map.
TRANSPARENT=TRUE|FALSE O Background transparency
BGCOLOR=color_value O Hexadecimal RGB value
EXCEPTIONS=exception_format O The format exceptions
TIME=time O Time value of layer
ELEVATION=elevation O Elevation Of layer
Other O dimension(s)
Aşağıdaki kodlar ise örnek bir GetMap isteğinin parametrelerine göre ayrılmış halini göstermektedir.
http://localhost:8080/geoserver/wms?service=WMS&version=1.1.0&request=GetMap& layers=Phd:AuU&styles=lines&bbox=32.426,37.828,32.569,38.034&width=355&height=51 2& srs=EPSG:4326&format=application/openlayers
Server : http://localhost:8080/geoserver/wms? Service: service=WMS Version: version=1.1.0 Request: request=GetMap Layers: layers=Phd:AdminitrativeUnits Styles: styles=lines Bbox: bbox=32.426,37.828,32.569,38.034 Width: width=355 Height: height=512 SRS: srs=EPSG:4326 Format: format=application/openlayers
GetMap isteği zorunlu olarak belirtilmesi gereken 9 parametre içermektedir. Sunucudan harita çekebilmesi için 9 parametrenin belirlenmesi gerekli olmakla birlikte geriye kalan 6 parametre ise isteğe bağlı olarak belirlenebilmektedir.
Zorunlu parametreler arasında haritası üretilecek olan veri seti ismi (layers), koordinat sistemi (crs), sembolizasyonda kullanılacak SLD dosyası (style), verilerin boundarybox olarak adlandırılan sol alt ve sağ üst köşe koordinatları (bbox), gösterilecek haritanın genişlik (width) ve yükseklik (height) değerleri ile gösterilecek format (format) bilgileri bulunmaktadır. İsteğe bağlı olan parametreler ise haritanın arka plan (bgcolor) rengi, haritanın şeffaflık değeri (transparent), zamana bağlı veri setleri için time ve yükseklik içeren veri setleri için ise elevation parametreleri kullanılmaktadır.
3.2.2.2 GetCapabilities
GetCapabilities isteği sunucu üzerinde bulunan web servislerinin metaveri, servis içeriği ve desteklenen istek parametre bilgilerinin bulunduğu XML dosyasını göstermektedir. Sunucudan istemci bilgisayarına gönderilen cevap (response) XML dosyası içerisinde sunucuda yayınlanan web servisleri, web servislerinin taşıdıkları veri setleri ve özellikleri, desteklenen koordinat referans sistemleri ve sunucu tarafından işlenebilen isteklerin parametreleri görülebilmektedir. GetCapabilities isteği oluşturulurken istek URL içerisinde zorunlu olarak belirlenmesi gereken bazı parametreler bulunmaktadır. Çizelge 3.10’da belirtilmesi gereken parametreler verilmiştir.
Çizelge 3.10.GetCapabilities parametreleri Request parameter Mandatory Optional Description
VERSION=version O Request version
SERVICE=WMS M Service type
REQUEST=GetCapabilities M Request name
FORMAT=MIME_type O Output format
UPDATE SEQUENCE=string O Sequence number
Aşağıdaki URL ise örnek bir GetCapabilities isteğini gerçekleştirmektedir. URL içerisinde Çizelge 3.10’da belirtilen zorunlu ve isteğe bağlı alanlar belirtilmiştir.
http://localhost:8080/geoserver/wms?service=wms&version=1.1.0&request=GetCapabilities
Server : http://localhost:8080/geoserver/wms?
Service: service=WMS
Version: version=1.1.0
Request: request=GetCapabilities
Yapılan istek türüne göre wms veya wfs isimli XML tabanlı bir dosya istemci bilgisayarına gönderilmektedir.
3.2.2.3 GetLegendGraphic
GetLegendGraphic isteği, WMS olarak yayımlanan verilerin lejant sembollerinin resim formatında görüntülenmesini sağlamaktadır. Bu isteğin çalıştırılabilmesi için WMS içerisinde SLD tanımlarının yapılması gerekmektedir.
GetLegendGraphic isteği yapılan URL içerisinde çeşitli parametrelerin belirlenmesi gerekmektedir. Bu parametreler Çizelge 3.11’de verilmiştir.
Çizelge 3.11.GetLegendGraphic parametreleri Request parameter Mandatory Optional Description REQUEST=GetLegendRequest M Request name
LAYER M Layer name
STYLE O SLD file
SCALE O Scale value
SLD O External SLD file
FORMAT O Output format
WIDTH O Legend width
Aşağıda GetLegendGraphic isteğinin Çizelge 3.11’deki parametrelere göre ayrılmış şekli görülmektedir.
http://localhost:8080/geoserver/wms?REQUEST=GetLegendGraphic&VERSION=1.1.0& FORMAT=image/png&WIDTH=20&HEIGHT=20&LAYER=Phd:AdministrativeUnits Server : http://localhost:8080/geoserver/wms? Request: request=GetLegendGraphic Verison: VERSION=1.1.0 Format:FORMAT=image/png Width: WIDTH=20 Height:HEIGHT=20 Layer: LAYER=Phd:AdministrativeUnits
Yapılan istek doğrultusunda gerekli parametreler sunucu bilgisayarlardaki GeoServer yazılımı tarafından işlenerek çıktı sonuç ürünü resim formatında web tarayıcılarında görülecektir. Genel olarak GeoPortal uygulamalarında ekranda aktif olarak görülen tabakanın lejantı, ekranda belirlenen bölümler üzerinde görülmektedir.