[oXygen-user] regression of oxygen 12.2: validation against rnc schema without .rnc extension on URL

Tara Athan
Sat Jun 18 17:27:41 CDT 2011


I figured this out, quite by accident.
"& in an href attribute must be escaped as &"
This is an HTML rule, but apparently also applies to the href in your 
processing instruction, because when I tried my string with &, it works.


***********************************
Before I updated to oXygen 12.2, I was able validate against a URL with
a query string that generates an RNC schema ( the URL points to a PHP
script that generates an RNC schema customized to the parameters in the
query string). Now with the new <?xml-model?> tag, it does not recognize
the URL, and gives an error message
"SystemID: C:\Documents and Settings\All
Users\Documents\RuleML\WP1\schema\tests\validation_on_URL_w_query_string\test_validation_on_URL_w_query_string.xml
Main validation file: C:\Documents and Settings\All
Users\Documents\RuleML\WP1\schema\tests\validation_on_URL_w_query_string\test_validation_on_URL_w_query_string.xml
Engine name: oXygen
Severity: error
Description: There is no schema or DTD associated with the document. You
can create an association either with the Associate Schema action or
configuring in the Options the Preferences/Document Type Association
list, or by creating a Validation Scenario.
"
I can (and you can too ;) manually verify that the URL is not broken,
and does indeed point to an RNC schema.

Also, when I use a redirect (on my server) that disguises this URL as a
physical file with an .rnc extension, oXygen is able to validate against
that. Below is the instance document that should validate.

<?xml version="1.0" encoding="UTF-8"?>
<?xml-model
href="http://ruleml.org/0.91/relaxng/schema_rnc.php?backbone=x3f&default=x7&termseq=x7&lng=x1&propo=x3f&implies=x7&terms=xf3f&quant=x7&expr=xf&serial=xf" 

type="application/relax-ng-compact-syntax"?>
<RuleML xmlns="http://www.ruleml.org/0.91/xsd">
    <Assert>
        <Exists>
            <Var>X</Var>
            <And>
                <Atom>
                    <oid>
                        <Var>X</Var>
                    </oid>
                    <Rel>P</Rel>
                </Atom>
            </And>
        </Exists>
    </Assert>
</RuleML>

The URL redirect that does validate is
"http://www.ruleml.org/0.91/relaxng/naffologeq_relaxed.rnc"

Could you please modify this feature so that the explicit .rnc extension
is not required? There is no need for it to be required, as the schema
type is specified with the @type attribute.

I would report this as an issue, but I can't find the issue tracker from
your website.

Tara




More information about the oXygen-user mailing list