XML.orgXML.org
FOCUS AREAS |XML-DEV |XML.org DAILY NEWSLINK |REGISTRY |RESOURCES |ABOUT
OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]
Re: [xml-dev] Problem using <xsd:all>

Show us the definition of the success and failure elements that you ref
 
F.

 
On 02/10/2007, Paul Stepowski <paul.stepowski@intient.com> wrote:
Hi George

Here's the example I'm testing with.

Excerpt from XSD with your suggested mods:

---snip---
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   targetNamespace=" http://www.intient.com/irukandji"
   xmlns:tasklist="http://www.intient.com/irukandji"
   elementFormDefault="qualified" attributeFormDefault="unqualified">

   <xsd:element name="tasklist">
       <xsd:complexType>
           <xsd:sequence>
               <xsd:element ref="tasklist:prerequisites" minOccurs="0"
                   maxOccurs="1" />
               <xsd:element ref="tasklist:task" minOccurs="1"
                   maxOccurs="unbounded" />
               <xsd:choice>
                   <xsd:sequence>
                       <xsd:element ref="tasklist:success" />
                       <xsd:element ref="tasklist:failure" />
                   </xsd:sequence>
                   <xsd:sequence>
                       <xsd:element ref="tasklist:failure" />
                       <xsd:element ref="tasklist:success" />
                   </xsd:sequence>
               </xsd:choice>
           </xsd:sequence>
           <xsd:attribute name="id" type="xsd:string" use="required" />
       </xsd:complexType>
   </xsd:element>
...
</xsd:schema>
---snip---

Complete XML document I'm validating against the XSD (Note that it
contains multiple <failure> tags, which should fail):

---snip---
<?xml version="1.0"?>
<tasklist xmlns="http://www.intient.com/irukandji"
   xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.intient.com/irukandji
file://C:/Documents and
Settings/Admin/workspace/itsml/bin/com/intient/spx/resolver/irukandji- istml-tasklist.xsd"
   id="tasklist-loadTest1">

   <task id="dns-lookup">
       <command id="1" type="native">
           <name>nslookup</name>
           <argument genericlist-id="1"></argument>
           <success>
               <rule operator="regexp">
                   <stdout>(.+)Address: (.+)</stdout>
               </rule>
           </success>
           <failure>
               <rule operator="true" />
           </failure>
       </command>
       <success>
           <rule operator="equals">
               <result command-id="1" success="true" />
           </rule>
       </success>
       <failure>
           <rule operator="true" />
       </failure>
   </task>
   <success>
       <rule operator="equals">
           <result task-id="dns-lookup" success="true" />
       </rule>
   </success>
   <failure>
       <rule operator="true" />
   </failure>
   <failure>
       <rule operator="true" />
   </failure>
   <failure>
       <rule operator="true" />
   </failure>
</tasklist>
---snip---

This XML document is successfully validated using JAXB.

Any ideas?

Thanks,

Paul


George Cristian Bina wrote:
> Hi Paul,
>
> The code fragment I posted allows only
>
> <success/>
> <failure/>
>
> and
>
> <failure/>
> <success/>
>
> How did you get to the conclusion that it allows multiple instances of
> failure? It may be possible that you are embedding that code fragment
> in another particle that can appear multiple times. A short but
> complete schema should help to identify exactly what is wrong, in
> general you will identify that yourself while creating the short but
> complete example.
>
> Best Regards,
> George
> ---------------------------------------------------------------------
> George Cristian Bina - http://aboutxml.blogspot.com/
> <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
> http://www.oxygenxml.com
>
>
> Paul Stepowski wrote:
>> Hi George,
>>
>> This seems closer but still allows multiple <success> or <failure> tags.
>>
>> That is, I require either:
>>
>> <tasklist>
>>  <success/>
>>  <failure/>
>> </tasklist>
>>
>> or:
>>
>> <tasklist>
>>  <failure/>
>>  <success/>
>> </tasklist>
>>
>> But your suggested schema still allows:
>>
>> <tasklist>
>>  <success/>
>>  <failure/>
>>  <failure/>
>>  <failure/>
>>  <failure/>
>> </tasklist>
>>
>> etc.
>>
>> I've tried experimenting with various combinations of minOccurs and
>> maxOccurs but I still can't nail this.
>>
>> Thanks,
>>
>> Paul
>>
>>
>> George Cristian Bina wrote:
>>> Hi Paul,
>>>
>>> Use a choice
>>> (success,failure)|(failure,success)
>>>
>>> in XML Schema:
>>>
>>> <xsd:choice>
>>>   <xsd:sequence>
>>>     <xsd:element ref="tasklist:success"/>
>>>     <xsd:element ref="tasklist:failure"/>
>>>   </xsd:sequence>
>>>   <xsd:sequence>
>>>     <xsd:element ref="tasklist:failure"/>
>>>     <xsd:element ref="tasklist:success"/>
>>>   </xsd:sequence>
>>> </xsd:choice>
>>>
>>> Best Regards,
>>> George
>>> ---------------------------------------------------------------------
>>> George Cristian Bina - http://aboutxml.blogspot.com/
>>> <oXygen/> XML Editor, Schema Editor and XSLT Editor/Debugger
>>> http://www.oxygenxml.com
>>>
>>>
>>> Paul Stepowski wrote:
>>>> Dennis Sterzenbach wrote:
>>>>> Hi Paul!
>>>>>
>>>>> Paul Stepowski wrote:
>>>>> <snip />
>>>>>>   <xsd:element name="task">
>>>>>>     <xsd:complexType>
>>>>>>       <xsd:sequence>
>>>>>>         <xsd:element ref="tasklist:prerequisites" minOccurs="0"
>>>>>>           maxOccurs="1" />
>>>>>>         <xsd:all>
>>>>>>           <xsd:element ref="tasklist:success" minOccurs="1"
>>>>>>             maxOccurs="1" />
>>>>>>           <xsd:element ref="tasklist:failure" minOccurs="1"
>>>>>>             maxOccurs="1" />
>>>>>>         </xsd:all>
>>>>>>       </xsd:sequence>
>>>>>>       <xsd:attribute name="id" type="xsd:string" use="required" />
>>>>>>     </xsd:complexType>
>>>>>>   </xsd:element>
>>>>> <snip />
>>>>>> "The content of 'sequence' must match (annotation?, (element |
>>>>>> group | choice |
>>>>>> sequence | any)*). A problem was found starting at: all."
>>>>>>
>>>>>> According to the w3c, all is a valid tag.  Can anyone shed some
>>>>>> light on this error?
>>>>> These are valid tags, but unfortunately not in that order.
>>>>> As far as I know you can't use <xsd:all> inside a sequence:
>>>>>
>>>>> "Parent elements: group, complexType, restriction (both simpleContent
>>>>> and complexContent), extension (both simpleContent and
>>>>> complexContent)"
>>>>>
>>>>> Best regards
>>>>> -- Dennis Sterzenbach
>>>>
>>>> Thanks Dennis,
>>>>
>>>> My next question is then, can I achieve the same effect with a
>>>> different syntax?
>>>>  I need to specify <success> AND <failure> both occuring once each
>>>> (in any
>>>> order).
>>>>
>>>> Thanks,
>>>>
>>>> Paul
>>>>
>>>> _______________________________________________________________________
>>>>
>>>>
>>>> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
>>>> to support XML implementation and development. To minimize
>>>> spam in the archives, you must subscribe before posting.
>>>>
>>>> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>>>> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
>>>> subscribe: xml-dev-subscribe@lists.xml.org
>>>> List archive: http://lists.xml.org/archives/xml-dev/
>>>> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>>>>
>>
>> _______________________________________________________________________
>>
>> XML-DEV is a publicly archived, unmoderated list hosted by OASIS
>> to support XML implementation and development. To minimize
>> spam in the archives, you must subscribe before posting.
>>
>> [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
>> Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
>> subscribe: xml-dev-subscribe@lists.xml.org
>> List archive: http://lists.xml.org/archives/xml-dev/
>> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
>>


_______________________________________________________________________

XML-DEV is a publicly archived, unmoderated list hosted by OASIS
to support XML implementation and development. To minimize
spam in the archives, you must subscribe before posting.

[Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/
Or unsubscribe: xml-dev-unsubscribe@lists.xml.org
subscribe: xml-dev-subscribe@lists.xml.org
List archive: http://lists.xml.org/archives/xml-dev/
List Guidelines: http://www.oasis-open.org/maillists/guidelines.php




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 1993-2007 XML.org. This site is hosted by OASIS