XSD handling in Pharo

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

XSD handling in Pharo

FDominicus
I've now searched for a while but did not found much about it.
Does anyone here have a hint where to look for XSD stuff handling in
Pharo?

Regards
Friedrich

Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

Bernat Romagosa
I've handled Atom feeds and (properly formatted) HTML pages with the XML packages for Pharo, so I guess any markup language should be working too...


Cheers,
Bernat.


2013/9/30 Friedrich Dominicus <[hidden email]>
I've now searched for a while but did not found much about it.
Does anyone here have a hint where to look for XSD stuff handling in
Pharo?

Regards
Friedrich




--
Bernat Romagosa.
Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

NorbertHartl
In reply to this post by FDominicus

Am 30.09.2013 um 15:26 schrieb Friedrich Dominicus <[hidden email]>:

> I've now searched for a while but did not found much about it.
> Does anyone here have a hint where to look for XSD stuff handling in
> Pharo?
>
I'm pretty sure there isn't much to find. But we would love to have some :) I would take short peek into SoapOpera because anyone that tries to use SOAP seriously would ne XSD stuff so maybe that's a route you find something.

Norbert



Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

philippeback
In reply to this post by Bernat Romagosa
XSD is not the same.

Guess you want to do something like JAXB or schema validation. But I don't know of anything like that in Pharo...

Phil
Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

NorbertHartl

Am 30.09.2013 um 19:35 schrieb [hidden email]:

> XSD is not the same.
>
What do you mean?

Norbert

> Guess you want to do something like JAXB or schema validation. But I don't know of anything like that in Pharo...
>
> Phil


Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

philippeback
I mean that XSD is XML indeed but the usage is for defining structures, and crafting all kinds of artifacts from there.

I was involved with a project where a ton of XSDs were used to define business message structures.

Reading XML is not giving us reading XML with XSD schema validation nor Classes generated from XSD files (as does Java JAXB).




On Tue, Oct 1, 2013 at 10:10 AM, Norbert Hartl <[hidden email]> wrote:

Am 30.09.2013 um 19:35 schrieb [hidden email]:

> XSD is not the same.
>
What do you mean?

Norbert

> Guess you want to do something like JAXB or schema validation. But I don't know of anything like that in Pharo...
>
> Phil




Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

Brenda Larcom
I have some partly-finished Squeak code that creates a schema-specific validating XML parser & generator (well, data objects that do this) given an XSD.  My motivating use case is to enable quick support of new XML-based file formats.  So, you would design your objects as usual, then run my schema parser, which would stub out objects to parse & generate the new format.  Then you would write tiny conversion methods between your objects and the new ones.  Poof!  Support for a new file format.

Partway through I found an enormous Java library that did something similar; it may be the one Phil mentions below. The one I recall was pretty big (13 namespaces) and I decided not to just port it because it seemed more complex than I thought was needed.  On the other hand, it is finished, whereas..

I have been too busy to work on mine for several years now :( .  So, I will hunt for it tonight & put the latest version somewhere other people can get & work on it.  I don't remember what state it is in, but I never do so I think/hope it has lots of comments & tests for how I intended it to work.  

The other catch (besides it being half-finished) is, if/when I eventually start working on it again, I will turn it into a completely pedantic validating parser/emitter, because I want it to e.g. prevent XML injection without conscious thought from the developer using it.  I am happy to help/advise anyone who wants this same goal to meet it, but if you want to add direct accessors or anything else that routes around the validation, please do so in a package that extends mine (in the same classes is fine) so that I can still meet my original intent when I eventually get back to it.

Brenda

On Oct 1, 2013, at 4:38 AM, "[hidden email]" <[hidden email]> wrote:

I mean that XSD is XML indeed but the usage is for defining structures, and crafting all kinds of artifacts from there.

I was involved with a project where a ton of XSDs were used to define business message structures.

Reading XML is not giving us reading XML with XSD schema validation nor Classes generated from XSD files (as does Java JAXB).




On Tue, Oct 1, 2013 at 10:10 AM, Norbert Hartl <[hidden email]> wrote:

Am 30.09.2013 um 19:35 schrieb [hidden email]:

> XSD is not the same.
>
What do you mean?

Norbert

> Guess you want to do something like JAXB or schema validation. But I don't know of anything like that in Pharo...
>
> Phil





smime.p7s (2K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: XSD handling in Pharo

hernanmd
Hi Brenda,
Your work sounds very promising. I am looking forward to check it out.
Cheers,

Hernán


2013/10/1 Brenda Larcom <[hidden email]>
I have some partly-finished Squeak code that creates a schema-specific validating XML parser & generator (well, data objects that do this) given an XSD.  My motivating use case is to enable quick support of new XML-based file formats.  So, you would design your objects as usual, then run my schema parser, which would stub out objects to parse & generate the new format.  Then you would write tiny conversion methods between your objects and the new ones.  Poof!  Support for a new file format.

Partway through I found an enormous Java library that did something similar; it may be the one Phil mentions below. The one I recall was pretty big (13 namespaces) and I decided not to just port it because it seemed more complex than I thought was needed.  On the other hand, it is finished, whereas..

I have been too busy to work on mine for several years now :( .  So, I will hunt for it tonight & put the latest version somewhere other people can get & work on it.  I don't remember what state it is in, but I never do so I think/hope it has lots of comments & tests for how I intended it to work.  

The other catch (besides it being half-finished) is, if/when I eventually start working on it again, I will turn it into a completely pedantic validating parser/emitter, because I want it to e.g. prevent XML injection without conscious thought from the developer using it.  I am happy to help/advise anyone who wants this same goal to meet it, but if you want to add direct accessors or anything else that routes around the validation, please do so in a package that extends mine (in the same classes is fine) so that I can still meet my original intent when I eventually get back to it.

Brenda

On Oct 1, 2013, at 4:38 AM, "[hidden email]" <[hidden email]> wrote:

I mean that XSD is XML indeed but the usage is for defining structures, and crafting all kinds of artifacts from there.

I was involved with a project where a ton of XSDs were used to define business message structures.

Reading XML is not giving us reading XML with XSD schema validation nor Classes generated from XSD files (as does Java JAXB).




On Tue, Oct 1, 2013 at 10:10 AM, Norbert Hartl <[hidden email]> wrote:

Am 30.09.2013 um 19:35 schrieb [hidden email]:

> XSD is not the same.
>
What do you mean?

Norbert

> Guess you want to do something like JAXB or schema validation. But I don't know of anything like that in Pharo...
>
> Phil