Buenas.

Si, parece que esa etiqueta no la genera correctamente, aunque Google Earth no protesta por ella.

Se soluciona sustituyendo el método writeRoot de la clase KMLWriter por el siguiente:

    /**
     * Writes the KML document root
     *
     * @param doc
     */
    private Element writeRoot( Document doc ) {

        // Create the root element
        Element kmlRoot = new DefaultElement("kml",
            new Namespace("", "http://www.opengis.net/kml/2.2";));
        doc.add(kmlRoot);

        return kmlRoot;
    }

También es necesario incluir los import siguientes:

import org.dom4j.tree.DefaultElement;
import org.dom4j.Namespace;

Saludos,

El 11/08/2011 23:36, arm mra escribió:
Hola

No se si es un bug, pero me parece que hay un error en la generación del archivo kml ya que al root 
le agrega un atributo (xmlns:xmlns="http..." ) Que es un prefijo reservado para xml y 
creo que debería ser(xmlns:"http...")Como es en los kml que genera google earth
-----Original Message-----
From: Sergio Baños Calvo<[email protected]>
Date: Thu, 11 Aug 2011 07:23:00
To:<[email protected]>
Subject: Re: [Kosmo] Kml's en kosmo

Buenos días.

  La escritura de ficheros KML se realiza en la clase 
org.saig.core.dao.datasource.filedatasource.kml.KMLWriter (proyecto saig-core). 
En el método writeFeatures, línea 554, comente el siguiente fragmento de código:

  // Add the extended data element
  Element extendedData = placemark.addElement(EXTENDED_DATA_ELEMENT_NAME);

  // Add the schema data element
  Element schemaData = extendedData.addElement(SCHEMA_DATA_ELEMENT_NAME);
  schemaData.addAttribute("schemaUrl", "#" + schemaID); //$NON-NLS-1$ 
//$NON-NLS-2$

  // Add one entry for each feature attribute
  FeatureSchema featSchema = feat.getSchema();
  int geomIndex = featSchema.getGeometryIndex();
  for( int i = 0; i<  featSchema.getAttributeCount(); i++ ) {
      if (i != geomIndex) {
          Attribute attr = featSchema.getAttribute(i);
          Object value = feat.getAttribute(i);

          Element simpleData = schemaData.addElement(SIMPLE_DATA_ELEMENT_NAME);
          simpleData.addAttribute("name", attr.getName()); //$NON-NLS-1$

          if (value != null) {
              simpleData.addText(convertValueToKMLString(value, 
attr.getType()));
          }
      }
  }

  Una vez modificada la clase, genere de nuevo el fichero saig.jar y actualice 
su versión de Kosmo Desktop con dicho cambio.


  Respecto al tema de las versiones tanto de Kosmo Server como Kosmo Mobile, 
ambas se encuentran en fase de desarrollo y no hay fecha prevista para su 
publicación a corto / medio plazo. Cualquier novedad al respecto se notificará 
tanto en esta lista de distribución como en la propia página web del proyecto 
Kosmo.

  Saludos,

  El 11/08/2011 0:52, arm mra escribió: Hola Le agradecería la información, ya baje las fuentes de la version 2.0.0 pero aun no he tenido tiempo de revisar 
bien(actualmente uso la version portable precompilada), asi que me seria de gran ayuda si me indicara los archivos que debo modificar para cambiar el tipo 
de salida KML. Otro detalle, me gustaría saber un poco mas acerca del estado de desarrollo de la version server ya que trabajo en una empresa en la que 
estamos empezando a migrar a SIG libre accesible via web y actualmente estoy en fases de experimentación con los entornos mapguide y mapserver, pero me 
gustaría probar otras opciones, además tengo algunos conocimientos de programación web(léase: java, ajax, php, flash). Gracias -----Original Message----- 
From: Sergio Baños Calvo&lt;[email protected]&gt;<mailto:[email protected]>  Date: Wed, 10 Aug 2011 22:29:30 
To:&lt;[email protected]&gt;<mailto:[email protected]>  Subject: Re: [Kosmo] Kml's en kosmo Buenas Arm mra. La extensión actual "Origen de datos 
KML" no permite al usuario decidir si desea exportar los atributos de la capa al KML o no (que corresponden a las etiquetas<Extendeddata>). 
Tomamos nota para incluirlo en la próxima versión. De todas formas, si tiene conocimientos de programación puedo indicarle qué debe modificar para que 
dicha información no se salve en el fichero KML de salida. Saludos, El 09/08/2011 19:02, arm mra escribió: Hola, soy nuevo en la lista aunque uso kosmo 
desde hace mas o menos un año y quisiera saber si existe alguna manera de cambiar la distribucion de datos xml en los archivos de salida kml para que no 
tengan etiquetas<extendeddata>_______________________________________________ Kosmo mailing list [email protected]<mailto:[email protected]>   
&lt;mailto:[email protected]&gt;<mailto:[email protected]>   http://lists.saig.es/mailman/listinfo/kosmo 
_______________________________________________ Kosmo mailing list [email protected]<mailto:[email protected]>  http://lists.saig.es/mailman/listinfo/kosmo



_______________________________________________
Kosmo mailing list
[email protected]
http://lists.saig.es/mailman/listinfo/kosmo

--

Sergio Baños Calvo

Jefe de desarrollos
Sistemas Abiertos de Información Geográfica, S.L. (SAIG S.L.)
Tlfno. móvil: 685005960
Tlfno. fijo: (+34) 954788876

E-mail: [email protected]

_______________________________________________
Kosmo mailing list
[email protected]
http://lists.saig.es/mailman/listinfo/kosmo

Responder a