HI Christian, How have you loaded the 'publishers-51cr.rnc' schema into database because i am loading the schama using function db:store so it is being loaded as binary then i am retrieving using function db:retrive so i it can be problem in loading the schema.
On Wednesday, 21 June 2017 1:54 PM, Christian Grün <christian.gr...@gmail.com> wrote: As Marc said, the third argument needs to be set to true. I created a new 'onix' database with a single XML document and the passed on RelaxNG file, and the validatio could be successfully started (it stopped with the error message '[bxerr:BXVA0001] Validation failed', because my XML document did not match the schema. What happens if you directly reference your XML document and RelaxNG file? validate:rng('doc.xml','publishers-51cr.rnc',true()) On Wed, Jun 21, 2017 at 10:16 AM, Dharmendra Singh <dharam.m...@gmail.com> wrote: > Hi Marc, > > I have done as you said to use true() as third param but still i am getting > the same error, below is my code. > > let $binary := db:retrieve('onix','/relaxng/publishers-51cr.rnc') > let $schema := bin:decode-string($binary) > let $input := db:open('onix') > return > validate:rng($input,$schema,true()) > > > On Wednesday, 21 June 2017 1:29 PM, Marc van Grootel > <marc.van.groo...@gmail.com> wrote: > > > No problem. Just use the validate:rng#3. Provide true() as the third > param and it should happily process compact syntax for you. > Getting includes to work is a different matter though so your schema > should probably be standalone. Otherwise, maybe, store the schemas on > the filesystem. > > Cheers, > --Marc > > On Wed, Jun 21, 2017 at 9:36 AM, Imsieke, Gerrit, le-tex > <gerrit.imsi...@le-tex.de> wrote: >> Hi Dharmendra, >> >> The function validate:rng() seems to only accept a Relax NG *XML syntax* >> document as its 2nd argument. You can convert the rnc file to rng using >> trang and store it in the DB as a regular XML file. >> >> Gerrit >> >> On 6/21/17 8:20 AM, Dharmendra Singh wrote: >>> >>> Hi all, >>> >>> I have loaded the RNG schema using function db:store and also loaded the >>> XML in the DB which has to be validated, but i am getting the error, >>> below >>> is my code: >>> >>> >>> let $binary := db:retrieve('onix','/relaxng/publishers-51cr.rnc') >>> let $schema := bin:decode-string($binary) >>> return >>> let $input := db:open('onix') >>> return validate:rng($input, $schema) >>> >>> when i run this code i get the error invalid XML charcter(20) >>> >>> so what i am doing wrong here. >> >> >> -- >> Gerrit Imsieke >> Geschäftsführer / Managing Director >> le-tex publishing services GmbH >> Weissenfelser Str. 84, 04229 Leipzig, Germany >> Phone +49 341 355356 110, Fax +49 341 355356 510 >> gerrit.imsi...@le-tex.de, http://www.le-tex.de >> >> Registergericht / Commercial Register: Amtsgericht Leipzig >> Registernummer / Registration Number: HRB 24930 >> >> Geschäftsführer: Gerrit Imsieke, Svea Jelonek, >> Thomas Schmidt, Dr. Reinhard Vöckler > > > > > -- > --Marc > >