leor

Members
  • Content count

    1
  • Joined

  • Last visited

Community Reputation

0 Neutral

About leor

  • Rank
    Newbie
  1. That I am working on?: I am generating an XML schema that controls the inclusion of a logical expression in a program. There are logical operator (https://en.wikipedia.org/wiki/Logical_connective): - Unary (now only work with not) (force MaxOccurss=1 of LOGIC_VALUES) - Binary (and,or) (force MaxOccurss=Unbounded of LOGIC_VALUES) You can see the visual schema of code: Current code, which does not have the requested functionality <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified"> <xs:element name="LOGIC_EXPRESSION"> <xs:complexType> <xs:all> <xs:element name="LOGIC_OPERATOR" type="TYPE_LOGIC_OPERATOR"/> <xs:element ref="LOGIC_VALUES"/> </xs:all> </xs:complexType> </xs:element> <xs:element name="LOGIC_VALUES"> <xs:complexType> <xs:choice> <xs:element name="LOGIC_VALUE" minOccurs="1" maxOccurs="unbounded"/> </xs:choice> </xs:complexType> </xs:element> <xs:simpleType name="TYPE_LOGIC_OPERATOR"> <xs:restriction base="xs:string"> <xs:enumeration value="and"/> <xs:enumeration value="or"/> <xs:enumeration value="not"/> </xs:restriction> </xs:simpleType> </xs:schema> What do I need? I need know: - If possible in the restriction of logic operator you can force the maxOccur of Logic_Values (dynamic change of maxoccurs to other element) - If it is possible to do, what should I use? Example of what I want You are writting the next XML code: <?xml version="1.0" encoding="UTF-8"?> <LOGIC_EXPRESSION xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="file:/media/sf_Downloads/xml/Beta.xsd"> <LOGIC_OPERATOR>not</LOGIC_OPERATOR> <LOGIC_VALUES> <LOGIC_VALUE>Variable1</LOGIC_VALUE> <LOGIC_VALUE>Variable2</LOGIC_VALUE> </LOGIC_VALUES> </LOGIC_EXPRESSION> The XML schema should detect that it is a unary operator and you should receive an error. Thaks a million