Page 1 of 1

no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Fri May 14, 2010 2:45 pm
by spepping
Hi,

I can create a successful validation scenario that validates my documents with an ISO-Schematron schema. Oxygen picks up that this is an ISO-Schematron schema and does the validation. When I try to do the same validation using a NVDL schema, with

<rules xmlns="http://purl.oclc.org/dsdl/nvdl/ns/structure/1.0">
<namespace ns="http://xxx">
<validate schema="rng/xxx.rng"/>
<validate schema="rules/rules.sch"/>

where rules is an ISO-Schematron schema in the namespace "http://purl.oclc.org/dsdl/schematron", I get the error message 'org.xml.sax.SAXParseException-no implementation available for schema language with namespace URI "http://purl.oclc.org/dsdl/schematron"'. The engine is there, see above. How do I register it, and how is it called?

Regards, Simon

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Fri May 14, 2010 4:06 pm
by george
The current implementation of NVDL does not support ISO Schematron. There is an open issue for adding this support, please vote for it by starring the issue:
http://code.google.com/p/jing-trang/issues/detail?id=23

Best Regards,
George

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Fri May 14, 2010 4:56 pm
by spepping
Hi George,

Thanks for the pointer. I was not aware that you use the NVDL and ISO-Schematron support in Jing-Trang. Oxygen also has independent ISO-Schematron support; why is that used in validation against a schematron schema but not against an NVDL schema?

Regards, Simon

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Mon May 17, 2010 5:50 pm
by george
Dear Simon,

We have indeed an independent ISO Schematron implementation that we use in oXygen.
I implemented the NVDL support on top of Jing initially as a different project called oNVDL, then that code was merged back into Jing. This NVDL support cannot be immediately used with any ISO Schematron implementation, it can be used only with validation implementations integrated into Jing and for now that supports only pre-ISO Schematron. The issue I pointed to deals exactly with adding ISO Schematron inside Jing and that will automatically enable the NVDL validation to use ISO Schematron.

Best Regards,
George

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Mon Aug 08, 2011 2:22 pm
by matthieu.ricaud
Hi all,

For the moment I'm using ant-schematron.jar to validate ISO-schematron.
But I'd like to use ISO-schematron with an NVDL script within oXygen AND from command line (using onvdl.jar).

I was wondering if there are news about ISO-Schematron validation with jing or oNVDL?

If not, is there a way to use oXygen's ISO-Schematron implementation from a command line ?

Thanks in advance for any advices,

Best Regards,

Matthieu

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Mon Aug 08, 2011 5:36 pm
by sorin_ristache
Hello Matthieu,

As George said above the NVDL implementation used in Oxygen is now part of the jing-trang project. In this project there is an issue currently opened (and not implemented yet) for adding ISO Schematron support in this NVDL implementation. You can add a vote in that issue for increasing its priority.


Regards,
Sorin

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Mon Aug 08, 2011 8:55 pm
by george
The ISO Schematron implementation from oXygen is available in [oXygen]/frameworks/schematron/impl and there is a readme.txt file that describes the processing. All you need is to get that in a script of your choice and execute it from command line. Of course you can use also the skeleton implementation of ISO Schematron directly - our implementation was based on skeleton, we forked at some moment when the skeleton implementation tried to support both ISO and pre-ISO Schematron in the same implementation and none worked ok.

Best Regards,
George

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Mon Aug 08, 2011 9:33 pm
by matthieu.ricaud
Thank you George, I just wonder why I didn't see that folder before !;-)

I read the readme.txt : is the processing steps also available as script somewhere in [oXygen]/frameworks ?
I had a look at schematron.framework (and schematron15.framework) but it doesn't seem to be the implementation's script?

Anyway I think I'll be able to write a batch script, an xproc pipeline or an ant task to do the job as described in readme.txt. I'm just curious to undersand how oXygen works actually.

Thanks for your help,

Regards,
Matthieu.

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Tue Aug 09, 2011 9:08 am
by george
No, we do not have such a script.
oXygen performs those steps but it does that directly in Java and once a schema is compiled as an XSLT oXygen reuses that until it detects that the schema file was changed or the user triggers the "Refresh cache and validate" action.

Best Regards,
George

Re: no implementation available for "http://purl.oclc.org/dsdl/s

Posted: Tue Aug 09, 2011 10:07 am
by matthieu.ricaud
Thanks a lot George for this clear explanation,
Best Regards,
Matthieu.