- From: Christophe Marchand <cmarchand@oxiane.com>
- Date: Mon, 12 Sep 2016 08:24:03 +0200
- Cc: xmlschema-dev@w3.org
- Message-ID: <7c21564a-24da-5fb9-ded8-bff6abe27ed9@oxiane.com>
Following your suggests, I still can not manage to make it run correctly.
Attached is a simplified schema and a XML file that contains 4 samples :
the 3 first are expected to be valid, the last one to be invalid.
I use oXygen 17.0 on dev side, & xerces 2.12-beta-r1667115 on prod side.
Thanks in advance for your help...
Christophe
Le 07/09/2016 à 10:55, Michael Kay a écrit :
> The fact that you use cfg:TPipe to refer to the type is a clue that the schema has a targetNamespace which you haven't shown us. This would suggest that the pipe element is also in a namespace which you haven't shown us, and if this is the case then my guess is that the xslt element is also in a namespace, in which case the XPath expression in the assertion needs to use a prefixed name to refer to it (or to declare a default XPath namespace).
>
> Michael Kay
> Saxonica
>
>> On 6 Sep 2016, at 17:21, Christophe Marchand <cmarchand@oxiane.com> wrote:
>>
>> Hello,
>>
>> I've just added a simple assert to my schema, and I can not get errors validating wrong documents. I can nto find why.
>> Any help will be much appreciated...
>>
>> Best,
>> Christophe
>>
>> My schema :
>> <xs:complexType name="TPipe">
>> <xs:sequence>
>> <xs:choice maxOccurs="unbounded">
>> <xs:element name="xslt" />
>> ...
>> </xs:choice>
>> </xs:sequence>
>> <xs:attribute name="nbThreads" type="xs:integer" default="1" use="optional"/>
>> <xs:attribute name="mutiThreadMaxSourceSize"/>
>> <xs:attribute name="traceOutput" type="xs:string"/>
>> <xs:assert test="if(not(./@traceOutput)) then empty(descendant::xslt[@traceActive='true']) else true()"/>
>> </xs:complexType>
>> <xs:element name="pipe" type="cfg:TPipe"/>
>>
>> The document I expect an error to be thrown for :
>> <pipe nbThreads="1" mutiThreadMaxSourceSize="" >
>> <xslt href="src/test/resources/identity.xsl" traceActive="true"/>
>> <output id="pipe1" >
>> <folder absolute="./target/generated-test-files"/>
>> <fileName name="${basename}-pipe1.xml"/>
>> </output>
>> </pipe>
>>
>>
>>
>
>
Attachments
- application/xml attachment: gaulois-pipe_config.xsd
- text/xml attachment: java-initial-step-ok.xml
Received on Monday, 12 September 2016 06:24:34 UTC