Hands-on øvelser ved Kortforsyningen Partnerseminar 2005

Slides:



Advertisements
Lignende præsentationer
Introduktion til CSS Videre med CSS. Body egenskaber Body-markøren omslutter alle vores indholdselementer. Du kan derfor ved at tillægge en række egenskaber,
Advertisements

Introduktion til CSS Godt i gang med CSS. 201 – V1 – Introduktion til CSS Hvad er stylesheet?
Parameteroverførsel i OIM Mellem portal og serviceprovider.
WFS 2.0 i Kortforsyningen Julian Hollingbery, Geografisk Infrastruktur, Kortforsyningsseminar 31/3-11.
Dagens program Hvad er frivillig.dk Hvordan er frivillig.dk bygget op
ForældreIntra Østerhøjskolen Formålet er
Introduktion til CMS. Indhold ● Forberedelse af indhold til hjemmeside ● Opsætning af hjemmeside (CMS)
GIS uden data lokalt GIS uden data lokalt.
Fremtidige tekniske fokusområder i Kortforsyningen Nikolaj Kamstrup National Geodatabank, Kort & Matrikelstyrelsen.
Vejledning i anvendelse af Web Feature Services Version 1
WordPress Nyeste version af WordPress kan hentes her:
REGISTRERINGSDATABASEN
– Sådan virker det! Dit elektroniske postsystem Ved Arne Crown Rasmussen
Partnerprogram og hjemmeside for udviklere Anna Brinch Thorsen Markedsområdet Kort & Matrikelstyrelsen Maj 2007.
PDF/A Skal - Skal ikke? v/ René Mittå Specialkonsulent
Cascading style sheets (CSS) Formål med css • Adskillelse af indhold og udtryk • Større typografisk frihed • Nemmere redigering Eksempel uden style sheetuden.
07 – Kort om OO Introduktion.
Sikkerhed/Otto Knudsen 1 Diagnostics  Debug af web-applikationer.
Indsæt billede her WMS og INSPIRE i Kortforsyningen Etablering af WMS service metadata for Kortforsyningstjenester omfattet af INSPIREs bilag.
OpenGeodata Hvad er geodata og hvilke muligheder giver de?
Hvad betyder Kommuneaftalen
Intro Forelæsning 2 Linux install-party lør.14.sept kl – man. 14.okt – Kursets omfang :7,5 ECTS Kursussammensætning: forelæsning.
Kortforsyningen – nye muligheder siden sidst og i fremtiden
ASP.NET Cache, State DataGrid og Diagnostics. Agenda – ASP.NET Cache, State og Cookies ( 1 del ) –Cache –Static member –Application State –Session State.
Masterpages/Otto Knudsen 1 Master Pages Master Pages i ASP.NET 2.0.
Introduktion/Otto Knudsen 1 Overblik WebForms ASP.NET.
Rapporter (Access, del 5)
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Udviklingen af Geodata-info.dk (version 2)
Tile caching og WMTS Et boost til performance
Kortforsyningen Version 1.1
Brug af Kortforsyningen Best Practices
Kortforsyningen: Switchboard v2 Gennemgang af de tekniske opdateringer og nye muligheder.
XML1 4.7 XML and Its Data Model. XML2 Introduktion til XML, 178 XML = eXtensible Markup Language Markup language –sprog, hvor data "pakkes ind" i tags.
Intro Projekttyper v/ Lise Louv, Uddannelsesafdelingen Siden sidst: evaluering på opgaver og virtuel kursus. Kursets ugeforløb læse – forelæsning – øvelsestime.
18 – Java Server Faces. 2 NOEA2009Java-kursus – JSF 2 Web-applikationer - 1 Brugere interagerer med en Web-browser Browseren sender forespørgsler til.
Print af vektordata med Kortforsyningen Nikolaj Kamstrup National Geodatabank, Kort & Matrikelstyrelsen.
Effektiv adgang til data Niels Mørck, Carl Bro GIS & IT  Carl Bro GIS og IT  Problemstillingen  Nordjyllands Amts Blanketsystem  Centralisering / decentralisering.
Nye muligheder med Web Map Service – Styled Layer Descriptor og Filter Encoding September 2006 MapInfokonference 2006.
1 HMAK XMLRelationel model og XMLNOEA / PQC 2005 SQLServer og XML Hent data via URL Generering af xml –Raw –Auto –Explicit Hent data via template Evt.
Kortforsyningen – Geo Web Services
Print af rasterdata.
Claus Brabrand, ITU, Denmark Apr 06, 2010Projekt: “Korteste Veje” Claus Brabrand [ ] ( “FÅP”: First-year Project Course, ITU, Denmark )
ALEPH og XML. eLib Seminar 18 – 19 november 2004 ALEPH og XML Status  Print system arbejder med XML lignende mellem filer.  Færdige printfiler kan gemmes.
XML Rasmus D. Lehrmann DM Indhold Hvad er XML? XML standarder Hvor bruges XML? XML struktur Træ struktur Element & Attribute Syntaks i XML Stylesheets.
Dataforsyning dataforsyning.kms.dk
XML og Skemaer Costanza Navarretta Center for Sprogteknologi, Københavns Universitet
Google Earth som GIS applikation? Nikolaj Kamstrup National Geodatabank, Kort & Matrikelstyrelsen.
AJAX/Otto Knudsen 1 AJAX Motivation Definition. AJAX/Otto Knudsen 2 Motivation En typisk web-applikation er synkron klienten sender en forespørgsel og.
Rapporter (Access, del 5). RHS – Informationsteknologi – Udgangspunkt Vi har oprettet en database Vi har defineret en eller flere tabeller, og.
Web Feature Service (WFS) WFS i Kortforsyningen
WFS - Hvad betyder det for GI infrastrukturen
KMS’ digitale ydelser til brugerne Jens Hollænder Partnerseminar 2. maj 2007.
Claus Brabrand, ITU, Denmark Mar 17, 2009Projekt: “Visualisering” Claus Brabrand [ ] ( “FÅP”: First-year Project Course, ITU, Denmark )
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
Adresse Web Services 22/ Julian Hollingbery Kort & Matrikelstyrelsen.
Masterpages/Otto Knudsen 1 Navigation på webstedet Kontroller til navigation mellem siderne på webstedet.
GIS Geografiske Informations Systemer. 2 GIS Defineres som IT-systemer til indsamling, opbevaring, vedligeholdelse og analyse af geografiske data samt.
Grundlæggende XML og XML- baserede teknologier til textmodellering DTD 2. kursusgang (7/ )
Adresse Web Services 22/ Julian Hollingbery Kort & Matrikelstyrelsen.
Fremstilling af Simple WEB steder [ITPL] Foråret 2004
Webserveren kan afvikle flere applikationer, der hver har deres eget selvstændige ”liv” og hukommelse. Den enkelte applikation består typisk af flere elementer.
DWDK – øvelsestime 3 CSS – let the fun begin!!. Tilgængelige slides Disse slides ligger på mit public drev
Per P Madsen AAU1 Del 4 : Sessions-, presentations- og applikationslaget - Applikationsprotokoller. - RPC og RMI. - Digital audio og Voice over IP. - RTP.
Grundlæggende DW, HTML, CSS, udskæring.
Kjeld Svidt  Institut for Byggeri og Anlæg  Aalborg Universitet IT i Byggeriet Semester kursusgang Introduktion til projektweb og html Kjeld.
Indsæt nyt billede: Format: B 254 x 190,5 mm Efter indsættelse, højreklik på billedet og placér det bagerst. Delete det gamle foto WMTS til mobile løsninger.
Web Services. OO (C++/ C#/Java) COM DCOM Web Services.
Kjeld Svidt  Institut for Byggeri og Anlæg  Aalborg Universitet IT i Byggeriet Semester kursusgang Projektweb og html (fortsat) Kjeld Svidt.
Web services SOA, SOAP og WSDL. Disposition Inledning / Definition SOAP Standard SOAP Beskeder WSDL.
Præsentationens transcript:

Hands-on øvelser ved Kortforsyningen Partnerseminar 2005 Nye muligheder med Web Map Service – Styled Layer Descriptor og Filter Encoding Hands-on øvelser ved Kortforsyningen Partnerseminar 2005 Februar 2005

Udviklingen af WMS WMS+SLD+FE WMS+SLD WMS Filter Encoding Styles Yes No Mulighed for at definere udseende for ét eller flere objekter fx ”Næstved kommune skal farves rød – de andre grå” WMS+SLD+FE Mulighed for at definere udseende for alle objekter i et tema fx ”alle motorveje skal være orange” WMS+SLD WMS Svarende til Kortforsyningen i dag. KMS har defineret udseendet af temaer (ét style pr. lag) Styles Named User

Eksempel WMS WMS+SLD WMS+SLD+FE

Layers og styles i WMS Med parameteren LAYERS vælger brugeren de temaer, kortet skal indeholde Værdien af LAYERS parameteren er en kommasepareret liste, hvor første tema i listen vises nederst i kortet, andet tema vises ovenpå første osv. Styles angiver hvilket af de prædefinerede udseender hvert lag skal have. Prædefinerede styles betyder, at udseendet af temaerne er defineret af udbyderen af tjenesten fx Kort & Matrikelstyrelsen Værdien af STYLES parameteren er en kommasepareret liste, hvor første udseende er associeret med første tema, andet udseende med andet tema osv. http://www.domain.dk/wms/mywms? LAYERS=hav,land,motorveje& STYLES=hvid,graa,orange& …

Web Map Service uden server definerede styles I mange WMS tjenester er der kun ét udseende til hvert tema, eller der er ét default udseende til hvert tema – dette gælder fx Kortforsyningen I disse tilfælde indeholder STYLES parameteren også en kommasepareret liste, men med tomme værdier mellem kommaerne Afhængig af WMS serveren kan den kommaseparerede liste erstattes af en tom streng I praksis har parameteren STYLES dermed ingen betydning, men den er stadig påkrævet for at være en gyldig WMS forespørgsel http://www.domain.dk/wms/mywms?LAYERS=hav,land,motorveje& STYLES=,,&… http://www.domain.dk/wms/mywms?LAYERS=hav,land,motorveje& STYLES=&…

Web Map Service med server definerede styles Nogle WMS tjenester tilbyder brugeren at vælge mellem en række udseender for hvert tema fx kan motorveje have to udseender med navnene “sort” og “orange” Ovenstående kaldes NamedStyles i SLD sprog I tilfælde af ovenstående vil GetCapabilities responset indeholde information om dette Kortforsyningen understøtter pt. Ikke NamedStyles, men har lavet en pseudo implementering ved fx at oprette flere temaer baseret på samme data, men med forskelligt udseende fx Ejendomsskel og Ejendomsskel_gul i WMS tjenesten tomat_01 http://www.domain.dk/wms/mywms?LAYERS=motorveje& STYLES=sort&… http://www.domain.dk/wms/mywms?LAYERS=motorveje& STYLES=orange&…

GetCapabilities respons – eksempel med flere Styles … <Layer queryable="1"> <Name>motorveje</Name> <Title>motorveje</Title> <LatLonBoundingBox minx="9.804250354044811" miny="56.12130342187802" maxx="9.967332432966554" maxy="56.2122932433927"/> <BoundingBox SRS="EPSG:25832" minx="550000.0" miny="6220000.0" maxx="560000.0" maxy="6230000.0"/> <Style> <Name>sort</Name> <Title>sort</Title> </Style> <Name>orange</Name> <Title>orange</Title> </Layer>

Styled Layer Descriptor OGC specifikation fra 2002 Nuværende version er 1.0.0 Kan opfattes som en udvidelse af Web Map Service specifikationen (WMS) Har bl.a. til formål at sætte brugeren i stand til at definere udseendet af indholdet i et kort fra en WMS – dette kaldes UserStyle I tilfælde af at en WMS server tillader brugeren at definere udseendet vil GetCapabilities responset indeholde information om dette … <UserDefinedSymbolization SupportSLD=”0" UserLayer="0" UserStyle=”1" RemoteWFS="0"/>

SLD udvider funktionaliteten i WMS SLD understøttede WMS’ere accepterer evt. også følgende forespørgsler: GetLegendGraphic DescribeLayer GetStyles PutStyles Hvorvidt en WMS understøtter ovenstående fremgår af GetCapabilities responset, hvor metoderne vil være at finde i gruppe med <GetFeatureInfo> og <GetMap> elementerne

GetCapabilities respons – eksempel på DescribeLayer … <DescribeLayer> <Format>application/vnd.ogc.wms_xml</Format> <DCPType> <HTTP> <Get> <OnlineResource xlink:href="http://www.domain.dk/wms/mywms?" xlink:type="simple" xmlns:xlink="http://www.w3.org/1999/xlink"/> </Get> </HTTP> </DCPType> </DescribeLayer>

SLD – DescribeLayer Bruges til at få de detaljerede informationer om et eller flere temaer i WMS’en herunder deres attributter Benyttes primært i forbindelse med FilterEncoding, hvor man evt. ønsker at arbejde med en delmængde af objekter i et tema http://www.domain.dk/wms/mywms?REQUEST=DescribeLayer& LAYERS=Matrikelflader,Kredse&… <?xml version="1.0" encoding="utf-8" ?> <WMS_DescribeLayerResponse version="1.1.1"> <LayerDescription wfs="http://www.domain.dk/wfs/mywfs" name="Matrikelflader"> <Query typename="Matrikelflader"></Query> </LayerDescription> <LayerDescription wfs="http://www.domain.dk/wfs/mywfs" name=”Kredse"> <Query typename=”Kredse"></Query> </WMS_DescribeLayerResponse>

SLD – GetLegendGraphic Bruges til at få et raster billede indeholdende udseendet for et givent tema Benyttes primært til at kunne sammensætte signaturforklaring http://wms.mywms.dk/wms?REQUEST=GetLegendGraphic&LAYER=Matrikelflader&…

SLD – PutStyles og GetStyles En forespørgsel der returnerer de UserStyles, der måtte være til rådighed for et eller flere givne temaer PutStyles Gør det muligt at uploade sit eget brugerdefinerede style, som herefter indgår som NamedStyle Har lav prioritet i Kortforsyningen – alternativt gives adgang til FTP, hvori SLD dokumenter kan gemmes

Hvordan definerer man selv udseendet? Man definerer det ønskede udseende ved hjælp af XML jf. SLD XML skemaet Som en tilføjelse til WMS forespørgslen skal man gøre opmærksom på ovenstående SLD dokument, så WMS serveren kan bruge dette i forbindelse med genereringen af billedet Der findes flere metoder at gøre WMS serveren opmærksom på dette: Ved at referere til et SLD dokument i WMS forespørgslen med parameteren SLD (HTTP GET) Ved at indlejre et SLD dokument i WMS forespørgslen med parameteren SLD_BODY (HTTP GET) Ved at kombinere WMS forespørgslen (XML) og SLD dokumentet (XML), som efterfølgende sendes til WMS serveren (HTTP POST)

GET SLD – eksempel http://www.domain.dk/wms/mywms?LAYER=Skov& SLD=http://www.domain.dk/sld/mysld.xml&… <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor version="1.0.0"> <NamedLayer> <Name>Skov</Name> <UserStyle> <Title>Skov</Title> <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Geometry> <PropertyName>skov_flade</PropertyName> </Geometry> <Fill> <CssParameter name="fill">#00cc33</CssParameter> </Fill> <Stroke> <CssParameter name="stroke">#ff3366</CssParameter> <CssParameter name="stroke-width">2</CssParameter> </Stroke> </PolygonSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor>

GET SLD_BODY – eksempel http://www.domain.dk/wms/mywms?LAYER=Skov& SLD_BODY=<?xml version="1.0" encoding="UTF-8"?><StyledLayerDescriptor version="1.0.0"><NamedLayer><Name>Skov</Name><UserStyle><Title>Skov</Title> <FeatureTypeStyle><Rule><PolygonSymbolizer><Geometry><PropertyName>skov_flade</PropertyName></Geometry><Fill><CssParameter name="fill">#00cc33</CssParameter></Fill><Stroke><CssParameter name="stroke">#ff3366</CssParameter><CssParameter name="stroke-width">2</CssParameter></Stroke></PolygonSymbolizer></Rule></FeatureTypeStyle></UserStyle></NamedLayer></StyledLayerDescriptor>&… Værdien af SLD og SLD_BODY bør være URL encoded – ovenstående er blot for læselighedens skyld!

POST WMS+SLD – eksempel <?xml version="1.0" encoding="UTF-8"?> <ogc:GetMap service="WMS" version="1.2"> <StyledLayerDescriptor version="1.0.0"> <NamedLayer> <Name>Skov</Name> <UserStyle> <Title>Skov</Title> <FeatureTypeStyle> <Rule> …. </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor> <BoundingBox srsName=http://www.opengis.net/gml/srs/epsg.xml#25832> <gml:coord> <gml:X>550000</gml:X> <gml:Y>6220000</gml:X> </gml:coord> <gml:X>551000</gml:X> <gml:Y>6221000</gml:X> </BoundingBox> <Output> <Format>image/png</Format> <Transparent>false</Transparent> <Size> <Width>500</Width> <Height>500</Height> </Size> </Output> <Exceptions>application/vnd.ogc.se_xml</Exception> </ogc:GetMap>

Fordele og ulemper ved de tre metoder Beskrivelse Fordele Ulemper GET SLD SLD dokument refereres til med parameteren SLD Mulighed for at benytte SLD som en slags style bibliotek Muligt at redigere med XML editor Internet overførsel af SLD dokument fra SLD vært til WMS Forholdsvist statisk GET SLD_BODY SLD dokument indlejret i URL’en med parameteren SLD_BODY Ekstern reference unødvendig Begrænset Internet transfer Dynamisk GET metode har en begrænsning i antal karakterer, så SLD skal være simpel POST SLD+WMS SLD og WMS kombineret i XML, der sendes til WMS server Ekstern reference unødvendig Begrænset Internet transfer Dynamisk Det er kun WMS versioner nyere end 1.1.1, der understøtter HTTP POST. Det er dermed endnu ikke så udbredt

SLD dokumentstruktur – generelt 1/2 StyledLayerDescriptor PointSymbolizer (1-1) or UserLayer (0-) LineSymbolizer (1-1) or or NamedLayer (0-) PolygonSymbolizer (1-1) or NamedStyle (0-) TextSymbolizer (1-1) or or UserStyle (0-) RasterSymbolizer (1-1) FeatureTypeStyle (1-) Rule (1-) Adskillige XML elementer og attributter kan være udeladt i ovenstående

SLD dokumentstruktur – generelt 2/2 <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor version="1.0.0"> <NamedLayer> <Name>Skov</Name> <UserStyle> <Title>Skov</Title> <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Fill> <CssParameter name="fill">#00cc33</CssParameter> </Fill> <Stroke> <CssParameter name="stroke">#ff3366</CssParameter> <CssParameter name="stroke-width">2</CssParameter> </Stroke> </PolygonSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor>

SLD dokumentstruktur – Symbolizers 1/2 PolygonSymbolizer Geometry (0-1) Fill (0-1) Stroke (0-1) Fill GraphicFill (0-1) CssParameter (0-) Stroke CssParameter (0-) GraphicFill (0-1) GraphicStroke (0-1) or

SLD dokumentstruktur – Symbolizers 2/2 <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor version="1.0.0"> <NamedLayer> <Name>Skov</Name> <UserStyle> <Title>Skov</Title> <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Fill> <CssParameter name="fill">#00cc33</CssParameter> </Fill> <Stroke> <CssParameter name="stroke">#ff3366</CssParameter> <CssParameter name="stroke-width">2</CssParameter> </Stroke> </PolygonSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor>

Hands-on øvelser – Styles Layer Descriptor Line Symbolizer Polygon Symbolizer Point Symbolizer Text Symbolizer – Polygon Text Symbolizer – Point

Styled Layer Descriptor – Line Symbolizer <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor version="1.0.0" xmlns:sld="http://www.opengis.net/sld"> <NamedLayer> <Name>Motorvej</Name> <UserStyle> <FeatureTypeStyle> <Rule> <LineSymbolizer> <Stroke> <CssParameter name="stroke">#ff3366</CssParameter> <CssParameter name="stroke-width">5.0</CssParameter> <CssParameter name="stroke-dasharray">10 5</CssParameter> </Stroke> </LineSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor> SLD: sld_line.xml SLD spec. side 33-38 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bykerne,Industri,Lav_bebyggelse,Hoej_bebyggelse,Raastof,Skov,Gartneri,Hede,Sand,Vaadomraade,Sti,Anden_vej_fyld,Vej_3-6_fyld,Motortrafikvej_fyld,Motorvej_fyld,Anden_vej,Vej_3-6,Motortrafikvej,Motorvej,Jernbane,Vandloeb,Groeft,Ejendomsskel,Fredskov_linie,Fredskov& styles=&bbox=565000,6230200,570000,6235200&sld=http://kmswww2.kms.dk/mapserver/sld/sld_line.xml

Styled Layer Descriptor – Polygon Symbolizer <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor version="1.0.0" xmlns:sld="http://www.opengis.net/sld"> <NamedLayer> <Name>Skov</Name> <UserStyle> <FeatureTypeStyle> <Rule> <PolygonSymbolizer> <Fill> <CssParameter name="fill">#00cc33</CssParameter> </Fill> <Stroke> <CssParameter name="stroke">#ff3366</CssParameter> <CssParameter name="stroke-width">2</CssParameter> </Stroke> </PolygonSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor> SLD: sld_polygon.xml SLD spec. side 38-40 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bykerne,Industri,Lav_bebyggelse,Hoej_bebyggelse,Raastof,Gartneri,Hede,Sand,Vaadomraade,Sti,Anden_vej_fyld,Vej_3-6_fyld,Motortrafikvej_fyld,Motorvej_fyld,Anden_vej,Vej_3-6,Motortrafikvej,Motorvej,Skov,Jernbane,Vandloeb,Groeft,Ejendomsskel,Fredskov_linie, Fredskov&styles=&bbox=565000,6230200,570000,6235200&sld=http://kmswww2.kms.dk/mapserver/sld/sld_polygon.xml

Styled Layer Descriptor – Point Symbolizer <?xml version="1.0" encoding="UTF-8"?> <StyledLayerDescriptor version="1.0.0" xmlns:sld="http://www.opengis.net/sld"> <NamedLayer> <Name>Fredskov</Name> <UserStyle> <Title>Fredskov</Title> <FeatureTypeStyle> <Rule> <PointSymbolizer> <Graphic> <Mark> <WellKnownName>star</WellKnownName> <Fill> <CssParameter name="fill">#33ccff</CssParameter> </Fill> </Mark> <Size>6</Size> </Graphic> </PointSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor> SLD: sld_point.xml SLD spec. side 40-44 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bykerne,Industri,Lav_bebyggelse,Hoej_bebyggelse,Raastof,Gartneri,Hede,Sand,Vaadomraade,Sti,Anden_vej_fyld,Vej_3-6_fyld,Motortrafikvej_fyld,Motorvej_fyld,Anden_vej,Vej_3-6,Motortrafikvej,Motorvej,Jernbane,Vandloeb,Groeft,Ejendomsskel,Fredskov_linie,Fredskov &styles=&bbox=565000,6230200,570000,6235200&sld=http://kmswww2.kms.dk/mapserver/sld/sld_point.xml

Styles Layser Descriptor – Text Symbolizer (Polygon) … </PolygonSymbolizer> <TextSymbolizer> <Label>Navn</Label> <Font> <CssParameter name="font-family">Arial</CssParameter> <CssParameter name="font-size">12</CssParameter </Font> <Fill> <CssParameter name="fill">#006600</CssParameter> </Fill> </TextSymbolizer> </Rule> </FeatureTypeStyle> </UserStyle> </NamedLayer> </StyledLayerDescriptor> SLD: sld_polygontext.xml SLD spec. side 45-49 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Komgrens&styles=&bbox=565000,6230200,570000,6235200&sld=http://kmswww2.kms.dk/mapserver/sld/sld_polygontext.xml

Styles Layser Descriptor – Text Symbolizer (Point) … <TextSymbolizer> <Label>FIX_KORT</Label> <LabelPlacement> <PointPlacement> <AnchorPoint> <AnchorPointX>1</AnchorPointX> <AnchorPointY>1</AnchorPointY> </AnchorPoint> <Displacement> <DisplacementX>0</DisplacementX> <DisplacementY>0</DisplacementY> </Displacement> <Rotation>0</Rotation> </PointPlacement> </LabelPlacement> <Font> <CssParameter name="font-family">Arial</CssParameter> <CssParameter name="font-size">6</CssParameter> </Font> <Fill> <CssParameter name="fill">#3300cc</CssParameter> </Fill> </TextSymbolizer> SLD: sld_pointtext.xml SLD spec. side 45-49 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bykerne,Industri,Lav_bebyggelse,Hoej_bebyggelse,Raastof,Skov,Gartneri,Hede,Sand,Vaadomraade,Sti,Anden_vej_fyld,Vej_3-6_fyld,Motortrafikvej_fyld,Motorvej_fyld,Anden_vej,Vej_3-6,Motortrafikvej,Motorvej,Jernbane,Vandloeb,Groeft,Ejendomsskel,Fredskov_linie,Fredskov, Fixpunkt&styles=&bbox=565000,6230200,570000,6235200&sld=http://kmswww2.kms.dk/mapserver/sld/sld_pointtext.xml

Filter Encoding OGC specifikation fra 2001 Oprindeligt en del af WFS specifikation, men nu udskilt i sin egen Nuværende version er 1.0.0 Fungerer sammen med Styled Layer Descriptor (SLD) og Web Feature Service (WFS) m.fl. Sætter brugeren i stand til at arbejde med en delmængde af geodata (udover BoundingBox), dvs. der kan differentieres på objektniveau og ikke blot temaniveau

Mange filtreringsmuligheder Rumlige filtre Bruges til at filtrere objekter baseret på deres rumlige placering og udstrækning Equals, Disjoint, Touches, Within, Overlaps, Crosses, Instersects… Sammenlignings filtre Benyttes til at filtrere objekter baseret på deres attributværdier PropertyIsEqualTo, PropertyIsGreaterThan, PropertyIsLessThan… Logiske filtre Gør det muligt at kombinere flere filtre And, Or, Not

Filter Encoding – SLD dokumentstruktur 1/2 Filter i SLD indgår altid som child til elementet <Rule> og dermed på linje med Symbolizerne Elementets navn er <Filter> eller <ElseFilter> Indholdet i <Filter> er relateret til Filter Encoding XML skemaet – namespace præfix er derfor ofte nødvendig Rule Filter (0-1) ElseFilter (0-1) Adskillige XML elementer og attributter kan være udeladt i ovenstående

Filter Encoding – SLD dokumentstruktur 2/2 … <Rule> <Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>MAS_MATRNR</ogc:PropertyName> <ogc:Literal>1r</ogc:Literal> </ogc:PropertyIsEqualTo> </Filter> <PolygonSymbolizer> <Stroke> <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">1</CssParameter> </Stroke> <Fill> <CssParameter name="fill">#FFFF00</CssParameter> <CssParameter name="fill-opacity">1</CssParameter> </Fill> </PolygonSymbolizer> <TextSymbolizer> <Label>MAS_MATRNR</Label> <Font> <CssParameter name="font-family">Arial</CssParameter> <CssParameter name="font-size">10</CssParameter> </Font> <CssParameter name="fill">#000000</CssParameter> </TextSymbolizer> </Rule>

Hands-on øvelser: Styles Layer Descriptor & Filter Encoding PropertyIsEqualTo – Highlight af objekt baseret på attributværdi PropertyIsGreaterThan – Interval rendering baseret på attributværdi Intersect – Highlight af objekt baseret på rumlig filtrering Dwithin - Highlight af objekter baseret på afstand til position (buffer)

Styled Layer Desctiptor & Filter – Highlight <?xml version="1.0" encoding="ISO-8859-1"?> <StyledLayerDescriptor version="1.0.0" xmlns="http://www.opengis.net/sld" xmlns:ogc="http://www.opengis.net/ogc"> <NamedLayer> <Name>Bygning</Name> <UserStyle> <Name>Highlight</Name> <FeatureTypeStyle> <FeatureTypeName>Bygning</FeatureTypeName> <Rule> <PolygonSymbolizer> <Stroke> <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">1</CssParameter> </Stroke> <Fill> <CssParameter name="fill">#CCCCCC</CssParameter> <CssParameter name="fill-opacity">1</CssParameter> </Fill> </PolygonSymbolizer> </Rule> <Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>Id_nr</ogc:PropertyName> <ogc:Literal>5961208</ogc:Literal> </ogc:PropertyIsEqualTo> </Filter>… SLD: fe_highlightbygning.xml Filter Encoding spec. side 11-13, 20 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bygning,Ejendomsskel,Adresser&styles=&bbox=575100,6224140,575300,6224340&sld=http://kmswww2.kms.dk/mapserver/sld/fe_highlightbygning.xml

Styled Layer Desctiptor & Filter - Intervalrendering … <Rule> <ogc:Filter> <ogc:PropertyIsGreaterThan> <ogc:PropertyName>REG_AREAL</ogc:PropertyName> <ogc:Literal>500</ogc:Literal> </ogc:PropertyIsGreaterThan> </ogc:Filter> <PolygonSymbolizer> <Stroke> <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">1</CssParameter> </Stroke> <Fill> <CssParameter name="fill">#FFFF99</CssParameter> <CssParameter name="fill-opacity">1</CssParameter> </Fill> </PolygonSymbolizer> </Rule> <ogc:Literal>1000</ogc:Literal> SLD: fe_interval.xml Filter Encoding spec. side 11-13, 20 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bykerne,Industri,Lav_bebyggelse,Hoej_bebyggelse,Raastof,Skov,Gartneri,Hede,Sand,Vaadomraade,Sti,Anden_vej_fyld,Vej_3-6_fyld,Motortrafikvej_fyld,Motorvej_fyld,Anden_vej,Vej_3-6,Motortrafikvej,Motorvej,Jernbane,Vandloeb,Groeft,Ejendomsskel,Fredskov_linie, Fredskov&styles=&bbox=565000,6230200,570000,6235200&sld=http://kmswww2.kms.dk/mapserver/sld/fe_interval.xml

Styled Layer Desctiptor & Filter – Highlight … <Rule> <PolygonSymbolizer> <Stroke> <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">1</CssParameter> </Stroke> <Fill> <CssParameter name="fill">#CCCCCC</CssParameter> <CssParameter name="fill-opacity">1</CssParameter> </Fill> </PolygonSymbolizer> </Rule> <Filter> <Intersect> <gml:Polygon srsName="EPSG:25832"> <gml:outerBoundaryIs> <gml:LinearRing> <gml:coordinates>575183,6224200 575186,6224203 575186,6224200 575183,6224200</gml:coordinates> </gml:LinearRing> </gml:outerBoundaryIs> </gml:Polygon> </Intersect> </Filter> SLD: fe_intersectbygning.xml Filter Encoding spec. side 9-11 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:\mapserver\tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Bygning,Ejendomsskel,Adresser&styles=&bbox=575100,6224140,575300,6224340&sld=http://kmswww2.kms.dk/mapserver/sld/fe_intersectbygning.xml

Styled Layer Desctiptor & Filter – Dwithin (buffer) … <Filter> <ogc:DWithin> <gml:Point srsName="EPSG:25832"> <gml:coordinates>575183,6224200</gml:coordinates> </gml:Point> <ogc:Distance units="meters">80</ogc:Distance> </ogc:DWithin> </Filter> <PolygonSymbolizer> <Stroke> <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">1</CssParameter> </Stroke> <Fill> <CssParameter name="fill">#FFFF00</CssParameter> <CssParameter name="fill-opacity">1</CssParameter> </Fill> </PolygonSymbolizer> SLD: fe_dwithinbygning.xml Filter Encoding spec. side 9-11 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:/mapserver/tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Ejendomsskel,Bygning&styles=&bbox=574700,6223740,575500,6224540&sld=http://kmswww2.kms.dk/mapserver/sld/fe_dwithinbygning.xml

Styled Layer Desctiptor & Filter – And (filter kombination) … <Rule> <Filter> <ogc:And> <ogc:PropertyIsGreaterThan> <!– kun matrikler > 5000 m2 --> <ogc:PropertyName>REG_AREAL</ogc:PropertyName> <ogc:Literal>5000</ogc:Literal> </ogc:PropertyIsGreaterThan> <ogc:PropertyIsLessThanOrEqualTo> <!– må ikke indeholde vej --> <ogc:PropertyName>VEJ_AREAL</ogc:PropertyName> <ogc:Literal>0</ogc:Literal> </ogc:PropertyIsLessThanOrEqualTo> </ogc:And> </Filter> <PolygonSymbolizer> <Stroke> <CssParameter name="stroke">#000000</CssParameter> <CssParameter name="stroke-width">1</CssParameter> </Stroke> <Fill> <CssParameter name="fill">#FF0000</CssParameter> <CssParameter name="fill-opacity">1</CssParameter> </Fill> SLD: fe_and.xml Filter Encoding spec. side 13-14, 23 http://kmswww2.kms.dk/mapserver/bin/mapserv.exe?map=c:/mapserver/tomat.map&service=WMS&request=GetMap&version=1.1.1&srs=EPSG:25832&width=600&height=600&format=image/png&exceptions=application/vnd.ogc.se_inimage&bgcolor=0xFFFFFF&transparent=false&layers=Hav,Amtgrens,Ejendomsskel&styles=&bbox=574500,6223540,575900,6224940&sld=http://kmswww2.kms.dk/mapserver/sld/fe_and.xml