Thanks again Stefano, I had only considered trying to modify the public schema but as you say that’s not necessary, changing the cached version would do. Hmm.. perhaps we will do this for now, with the intention of changing the “real” schema eventually.
Cheers Pete From: Stefano Costa [mailto:stefano.co...@geo-solutions.it] Sent: Wednesday, 2 September 2015 6:45 PM To: Warren, Peter (Mineral Resources, North Ryde) <peter.war...@csiro.au> Cc: geoserver-users <geoserver-users@lists.sourceforge.net> Subject: Re: [Geoserver-users] "Any" Elements in App-Schema Hi Peter, my apologies, I misinterpreted your first e-mail and didn't realize you had an xs:any element in your schema. I'm afraid you're right: app-schema does not allow adding arbitrary attributes to a type, even if the type definition contains an xs:any element. You do need a regular element of type xs:anyType to support schema extensions. I was wondering if you could, as a temporary workaround, modify the geosciml-portrayal schema as such: <complexType name="BoreholeViewType"> <complexContent> <extension base="gml:AbstractFeatureType"> <sequence> ... <!-- original content --> <!-- any processContents="lax" minOccurs="0" maxOccurs="unbounded"/--> <!-- new extension element of type xs:anyType --> <element name="extension" type="anyType" minOccurs="0" maxOccurs="unbounded" /> ... </sequence> </extension> </complexContent> </complexType> And then you could define a mapping like this: <AttributeMapping> <targetAttribute>gsmlp:extension</targetAttribute> <targetAttributeNode>gsmlp:ContactViewPropertyType</targetAttributeNode> </AttributeMapping> <AttributeMapping> <targetAttribute>gsmlp:extension/gsmlp:ContactView/gsmlp:name</targetAttribute> <sourceExpression> <OCQL>name</OCQL> </sourceExpression> </AttributeMapping> I verified and it works. The generated GML would still be schema valid according to the original geosciml-portrayal schema and thus you wouldn't lose interoperability. The only "drawback" is that you need to deploy your own edited copy of the schema along with GeoServer and have your mapping configuration point to it, but this should not be an issue, is it? Hope this helps. On Wed, Sep 2, 2015 at 6:20 AM, <peter.war...@csiro.au<mailto:peter.war...@csiro.au>> wrote: Stefano, The Schema is http://schemas.geosciml.org/geosciml-portrayal/2.0/geosciml-portrayal.xsd and the feature is boreholeview. All the features in this schema have a “catch all” as their last element: <any processContents="lax" minOccurs="0" maxOccurs="unbounded"/> XML Schemas are not really my speciality but I believe this means you can inject any elements you like at this point in your feature. Basically anything that is xml valid is schema valid. The problem is that geoserver doesn’t seem to be able to deal with the ambiguity of a completely open section of the schema. I have contacted one of the members of the group in charge of the schema and we will probably propose a change to an anyType element instead of the current one above. Thanks again Stefano. Pete From: Stefano Costa [mailto:stefano.co...@geo-solutions.it<mailto:stefano.co...@geo-solutions.it>] Sent: Tuesday, 1 September 2015 5:54 PM To: Warren, Peter (Mineral Resources, North Ryde) <peter.war...@csiro.au<mailto:peter.war...@csiro.au>> Cc: geoserver-users <geoserver-users@lists.sourceforge.net<mailto:geoserver-users@lists.sourceforge.net>> Subject: Re: [Geoserver-users] "Any" Elements in App-Schema Hi Peter, please see my comments below. On Tue, Sep 1, 2015 at 8:07 AM, <peter.war...@csiro.au<mailto:peter.war...@csiro.au>> wrote: I have tried the approach that you’re suggesting but my case is slightly different. The example given in the docs targets a tag named om:result, which is of type anyType (or some other generic type). In my case the schema doesn’t define a tag name at all, it just says “any elements can go in here”. As far as I understand, you do need a container element of type xs:anyType to be able to add "any elements" to your XML document AND have it validate against the schema. If your mapping is trying to produce invalid XML according to the schema, for sure GeoServer will have troubles with it... Could you share at least a relevant portion of your schema, to make sure we're on the same page? Thanks. -- Best regards, Stefano Costa == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Dott. Stefano Costa Senior Software Engineer GeoSolutions S.A.S. Via Poggio alle Viti 1187 55054 Massarosa (LU) Italy phone: +39 0584 962313<tel:%2B39%200584%20962313> fax: +39 0584 1660272<tel:%2B39%200584%201660272> http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003. The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc. ------------------------------------------------------------------------------ Monitor Your Dynamic Infrastructure at Any Scale With Datadog! Get real-time metrics from all of your servers, apps and tools in one place. SourceForge users - Click here to start your Free Trial of Datadog now! http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140 _______________________________________________ Geoserver-users mailing list Geoserver-users@lists.sourceforge.net<mailto:Geoserver-users@lists.sourceforge.net> https://lists.sourceforge.net/lists/listinfo/geoserver-users -- Best regards, Stefano Costa == GeoServer Professional Services from the experts! Visit http://goo.gl/it488V for more information. == Dott. Stefano Costa Senior Software Engineer GeoSolutions S.A.S. Via Poggio alle Viti 1187 55054 Massarosa (LU) Italy phone: +39 0584 962313<tel:%2B39%200584%20962313> fax: +39 0584 1660272<tel:%2B39%200584%201660272> http://www.geo-solutions.it http://twitter.com/geosolutions_it ------------------------------------------------------- AVVERTENZE AI SENSI DEL D.Lgs. 196/2003 Le informazioni contenute in questo messaggio di posta elettronica e/o nel/i file/s allegato/i sono da considerarsi strettamente riservate. Il loro utilizzo è consentito esclusivamente al destinatario del messaggio, per le finalità indicate nel messaggio stesso. Qualora riceviate questo messaggio senza esserne il destinatario, Vi preghiamo cortesemente di darcene notizia via e-mail e di procedere alla distruzione del messaggio stesso, cancellandolo dal Vostro sistema. Conservare il messaggio stesso, divulgarlo anche in parte, distribuirlo ad altri soggetti, copiarlo, od utilizzarlo per finalità diverse, costituisce comportamento contrario ai principi dettati dal D.Lgs. 196/2003. The information in this message and/or attachments, is intended solely for the attention and use of the named addressee(s) and may be confidential or proprietary in nature or covered by the provisions of privacy act (Legislative Decree June, 30 2003, no.196 - Italy's New Data Protection Code).Any use not in accord with its purpose, any disclosure, reproduction, copying, distribution, or either dissemination, either whole or partial, is strictly forbidden except previous formal approval of the named addressee(s). If you are not the intended recipient, please contact immediately the sender by telephone, fax or e-mail and delete the information in this message that has been received in error. The sender does not give any warranty or accept liability as the content, accuracy or completeness of sent messages and accepts no responsibility for changes made after they were sent or for other risks which arise as a result of e-mail transmission, viruses, etc.
------------------------------------------------------------------------------
_______________________________________________ Geoserver-users mailing list Geoserver-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-users