I would suggest using the "Style" attribute to classify your features. From ogrinfo:
$ ogrinfo -al test.kml -where "OGR_GEOMETRY='LINESTRING'" ... OGRFeature(Fibertech solution):1 Name (String) = Westborough MSC - Build ... Style = @msn_ylw-pushpin4 OGRFeature(Fibertech solution):2 Name (String) = Westborough MSC to Westborugh ... Style = @msn_ylw-pushpin8 So using CLASSITEM "Style" to classify your features might work: LAYER ... CLASSITEM "Style" CLASS EXPRESSION "@msn_ylw-pushpin8" ... END CLASS EXPRESSION "@msn_ylw-pushpin4" ... END END > -----Ursprüngliche Nachricht----- > Von: mapserver-users-boun...@lists.osgeo.org [mailto:mapserver-users- > boun...@lists.osgeo.org] Im Auftrag von alok mathur > Gesendet: Dienstag, 10. März 2015 05:38 > An: mapserver-users@lists.osgeo.org > Betreff: [mapserver-users] KML in mapserver > > Hi, > > I have a single folder with multiple Placemarks of different geometries in > an input KML file. > And I want to create a .map file using KML as input source. As mapserver > ignores KML styling so i need to give styling in mapserver for each layer. > I want to give styling at each placemark. Could you please help me out how > to do the same. > > KML > --------------------------- > > <?xml version="1.0" encoding="UTF-8"?> > <kml xmlns="http://www.opengis.net/kml/2.2" > xmlns:gx="http://www.google.com/kml/ext/2.2" > xmlns:kml="http://www.opengis.net/kml/2.2" > xmlns:atom="http://www.w3.org/2005/Atom"> > <Document> > <Folder> > <name>Fibertech solution</name> > > <Placemark> > <name>Westborough MSC - Build</name> > <styleUrl>#msn_ylw-pushpin4</styleUrl> > <LineString> > <tessellate>1</tessellate> > <coordinates> > -71.58570500983306,42.28745742866225,0 - > 71.58563778135751,42.28308954118536,0 - > 71.58466087108053,42.28307704913402,0 > </coordinates> > </LineString> > </Placemark> > <Placemark> > <name>Westborough MSC to Westborugh</name> > <styleUrl>#msn_ylw-pushpin8</styleUrl> > <LineString> > <tessellate>1</tessellate> > <coordinates> > -71.62172195712955,42.27186897741407,0 - > 71.62194000095552,42.27189433043378,0 - > 71.6225634332947,42.27210480296427,0 - > 71.62308968672842,42.27236391420707,0 - > 71.62394597288645,42.27309147863262,0 - > 71.62737594489003,42.27740640295431,0 - > 71.62822373584245,42.27893783334968,0 - > 71.63091971519079,42.28164762788888,0 - > 71.63207040059587,42.28370221254578,0 - > 71.62599732629406,42.28418518334991,0 - > 71.60795611539982,42.28517668969011,0 - > 71.60267209851122,42.28504601944216,0 - > 71.60188701357249,42.28516492137062,0 - > 71.58850360403626,42.28849573666959,0 - > 71.5858004650346,42.28852197680775,0 -71.58571706491037,42.2874804233345,0 > </coordinates> > </LineString> > </Placemark> > <Placemark> > <name>NEW Danbury</name> > <Camera> > <longitude>-73.45375129836707</longitude> > <latitude>41.390460041635</latitude> > <altitude>419.0806930250601</altitude> > <heading>13.43312150541231</heading> > <tilt>28.58299225276625</tilt> > <roll>-0.685026358787494</roll> > <gx:altitudeMode>relativeToSeaFloor</gx:altitudeMode> > </Camera> > <styleUrl>#msn_ylw-stars</styleUrl> > <Point> > <gx:drawOrder>1</gx:drawOrder> > <coordinates>-73.45404626023216,41.3929335947184,0</coordinates> > </Point> > </Placemark> > <Placemark> > <name>NEW Scotland Amp</name> > <LookAt> > <longitude>-72.09703050755105</longitude> > <latitude>41.69579944328172</latitude> > <altitude>0</altitude> > <heading>-0.790587312931665</heading> > <tilt>19.0106770482321</tilt> > <range>445.0511788150669</range> > <gx:altitudeMode>relativeToSeaFloor</gx:altitudeMode> > </LookAt> > <styleUrl>#msn_ylw-stars</styleUrl> > <Point> > <gx:drawOrder>1</gx:drawOrder> > <coordinates>-72.09643061038489,41.6960553015771,0</coordinates> > </Point> > </Placemark> > </Folder> > </Document> > </kml> > > > > MAP > ------------------ > MAP > NAME "QGIS-MAP" > # Map image size > SIZE 500 400 > UNITS meters > EXTENT -73.454046 41.392934 -71.584661 42.288522 > #FONTSET './fonts/fonts.txt' > SYMBOLSET 'symbols.txt' > #PROJECTION > # 'proj=longlat' > # 'datum=WGS84' > # 'no_defs' > #END > PROJECTION > "init=epsg:4326" > END > > # Background color for the map canvas -- change as desired > IMAGECOLOR 255 255 255 > IMAGEQUALITY 95 > IMAGETYPE png > > OUTPUTFORMAT > NAME "png" > DRIVER GD/PNG > MIMETYPE "image/png" > IMAGEMODE RGBA > EXTENSION "png" > TRANSPARENT ON > END > > # Legend > LEGEND > IMAGECOLOR 255 255 255 > STATUS ON > KEYSIZE 18 12 > LABEL > TYPE BITMAP > SIZE MEDIUM > COLOR 0 0 89 > END > END > > # Web interface definition. Only the template parameter > # is required to display a map. See MapServer documentation > WEB > # Set IMAGEPATH to the path where MapServer should > # write its output. > IMAGEPATH "/tmp/ms_tmp/" > > # Set IMAGEURL to the url that points to IMAGEPATH > # as defined in your web server configuration > IMAGEURL "/ms_tmp/" > > # WMS server settings > METADATA > "wms_enable_request" "*" > "wms_srs" "EPSG:900913 EPSG:4326 EPSG:3857 EPSG:2154 EPSG:310642901 > EPSG:4171 EPSG:310024802 EPSG:310915814 EPSG:310486805 EPSG:310702807 > EPSG:310700806 EPSG:310547809 EPSG:310706808 EPSG:310642810 EPSG:310642801 > EPSG:310642812 EPSG:310032811 EPSG:310642813 EPSG:2986" > "labelcache_map_edge_buffer" "-10" > "wms_title" "osm fiber data" > "wms_onlineresource" "http://haxv-onecontrol-154/cgi-bin/mapserv?" > "ows_sld_enable" "true" > END > > > #Scale range at which web interface will operate > # Template and header/footer settings > # Only the template parameter is required to display a map. See > MapServer documentation > #TEMPLATE 'fooOnlyForWMSGetFeatureInfo' > END > > # Start of LAYER DEFINITIONS ----------------------------- > LAYER > NAME "kml_line" > TYPE LINE > STATUS ON > CONNECTIONTYPE OGR > CONNECTION "doc_test.kml" > DATA "SELECT * FROM 'Fibertech solution' WHERE > OGR_GEOMETRY='LINESTRING'" > LABELITEM "NAME" > CLASS > NAME "Fiber Data" > STYLE > COLOR 250 0 0 > OUTLINECOLOR 255 255 255 > SIZE 6 > END > LABEL > SIZE GIANT > COLOR 0 0 0 > OUTLINECOLOR 255 255 255 > POSITION AUTO > END > END > END > ############# > # Start of LAYER DEFINITIONS ----------------------------- > LAYER > NAME "kml_point" > TYPE POINT > STATUS DEFAULT > CONNECTIONTYPE OGR > CONNECTION "doc_test.kml" > DATA "SELECT * FROM 'Fibertech solution' WHERE OGR_GEOMETRY='POINT'" > LABELITEM "NAME" > #FILTER ('[OGR_GEOMETRY]' == 'POINT') > #PROCESSING_OPTION "NATIVE_FILTER=OGR_GEOMETRY='POINT'" > CLASS > NAME "Splice Point" > STYLE > COLOR 250 0 0 > OUTLINECOLOR 255 255 255 > SYMBOL 'marker2' > SIZE 16 > END > LABEL > SIZE GIANT > COLOR 0 0 0 > OUTLINECOLOR 255 255 255 > POSITION AUTO > END > END > END > ############# > > END > > -- > > > Alok Mathur _______________________________________________ mapserver-users mailing list mapserver-users@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/mapserver-users