[Gvsig_desarrolladores] Problemas exportación a GML

Fernando González fergonco en gmail.com
Mar Ago 16 10:38:38 CEST 2011


Otra cosa. Para un shape de líneas, al exportar me produce el este
schema[1], en el que se define un tipo que extiende
gml:AbstractFeatureType y un elemento con substitution group
gml:_Feature. El caso es que eso sólo nos permite definir una Feature
en el XML ¿o estoy equivocado? ¿No debería crearse un tipo que
extendiera AbstractFeatureCollection para el elemento raíz?

Si estás de acuerdo abro un ticket con eso también.


[1]
<xs:schema xmlns:cit="http://www.gvsig.com/cit"
xmlns:gml="http://www.opengis.net/gml"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://www.gvsig.com/cit"
elementFormDefault="qualified" attributeFormDefault="unqualified"
version="2.1.2">
<xs:import namespace="http://www.opengis.net/gml" schemaLocation="feature.xsd"/>
<xs:complexType xmlns:xs="http://www.w3.org/2001/XMLSchema" name="output_Type">
<xs:complexContent>
<xs:extension base="gml:AbstractFeatureType">
<xs:sequence>
<xs:element name="the_geom" minOccurs="0" nillable="true"
type="gml:MultiLineStringPropertyType"/>
<xs:element name="ID" minOccurs="0" nillable="true" type="xs:double"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="output" type="cit:output_Type"
substitutionGroup="gml:_Feature"/>
</xs:schema>




2011/8/16 Jorge Piera Llodrá <jpiera en gvsig.com>:
> Creo que empieza a estar claro....
>
> On 08/16/2011 10:04 AM, Fernando González wrote:
>>> ¿No se está creando el esquema en el mismo directorio que el gml? En
>>> teoría, se tiene que crear un esquema con la estructura del GML en el
>>> mismo directorio de exportación del GML. Si no se hace así es un bug.
>>>
>> El usuario selecciona el path del XSD en la interfaz gráfica, pero
>> luego el schemaLocation pone siempre "cit.xsd". Para mí el bug es que
>> el schemaLocation no refleja el path introducido por el usuario.
>>
> Sí, tiene toda la pinta de ser eso.
>>>> 2) El elemento exportado no está definido en el esquema. En el esquema
>>>> se define un elemento output:
>>>>
>>>> <xs:element name="output" type="cit:output_Type"
>>>> substitutionGroup="gml:_Feature"/>
>>>>
>>>> pero la salida no tiene ningún elemento output. El elemento raíz tiene
>>>> el mismo nombre que la capa de la cual se exportó el GML.
>>>>
>>>>
>>> ¿Pero no has dicho que no hay esquema? Me he perdido....
>>>
>> Sí hay esquema, el problema es que con la información del atributo
>> schemaLocation no hay manera de encontrarlo. Suponiendo que arreglo a
>> mano el schemaLocation, se da lo que comento del elemento.
>>
> Primero habría que mirar que el path del schemaLocation es correcto y
> luego que el xsd sea correcto. Queda anotado.
>>>> 3) Cuando se genera el XML sin el schema, los nombres de los elementos
>>>> siguen estando cualificados y sigue habiendo un atributo
>>>> schemaLocation, como si realmente hubiera un esquema. Cuando el
>>>> usuario selecciona este caso es posible que sea mejor no usar nombres
>>>> cualificados, o al menos no especificar el "schemaLocation" del
>>>> esquema que no se ha generado.
>>>>
>>>>
>>>>
>>> En la primera versión que se hizo del exportador a GML había un
>>> formulario dónde se podían especificar cosas como el esquema, el espacio
>>> de nombres y el prefijo asociado al esquema (creo recordar que si no se
>>> definían se generaban respectivamente un esquema con el mismo nombre que
>>> el fichero exportado, el namespace "http://www.gvsig.org/cit" y el
>>> prefijo "cit"). Si los nombres aparecen cualificados y el schemaLocation
>>> "apunta" a un fichero inexistente entiendo que es un error de generación
>>> de schema.
>>>
>> Ahora mismo (1.11_final) se pregunta el path del XML, del XSD y hay un
>> check para decir si hay que crear el XSD. Nada de prefijo ni
>> namespace.
>>
>> Ahora que lo pienso, es posible que cuando no se desactiva el check de
>> crear el xsd, gvsig asume que el path del XSD es un schema existente
>> con la estructura adecuada, por eso crea un XML como si hubiera
>> schema. En tal caso no sería un bug. En cualquier caso, el
>> schemaLocation sigue sin apuntar a dicho schema.
>>
>
> Lo miramos en detalle ASAP.... He abierto un ticket en OSOR [1] para que
> no se nos pase, que el error es considerable.
>
> Muchas gracias por el detalle en tus comentarios!
> Jorge
>
> [1]
> https://forge.osor.eu/tracker/index.php?func=detail&aid=15722&group_id=89&atid=732
>>
>>> Me he perdido en algo...
>>>
>>> Un saludo,
>>> Jorge
>>>
>>>> Un saludo.
>>>> _______________________________________________
>>>> gvSIG_desarrolladores mailing list
>>>> gvSIG_desarrolladores en listserv.gva.es
>>>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>>>
>>>>
>>>
>>> --
>>> Jorge Piera Llodrá
>>> gvSIG software architect
>>> PRODEVELOP
>>> e-mail: jpiera en gvsig.com
>>> http://www.prodevelop.es
>>> http://www.gvsig.org
>>>
>>> _______________________________________________
>>> gvSIG_desarrolladores mailing list
>>> gvSIG_desarrolladores en listserv.gva.es
>>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>>
>>>
>> _______________________________________________
>> gvSIG_desarrolladores mailing list
>> gvSIG_desarrolladores en listserv.gva.es
>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>
>
>
> --
> Jorge Piera Llodrá
> gvSIG software architect
> PRODEVELOP
> e-mail: jpiera en gvsig.com
> http://www.prodevelop.es
> http://www.gvsig.org
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>


Más información sobre la lista de distribución gvSIG_desarrolladores