Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0"?>
- <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:xi="http://www.w3.org/2001/XInclude"
- targetNamespace="http://www.windower.net/spellcast/"
- xmlns="http://www.windower.net/spellcast/"
- elementFormDefault="qualified">
- <xs:import namespace="http://www.w3.org/2001/XInclude"
- schemaLocation="xinclude.xsd"/>
- <xs:include schemaLocation="baseSpellcastCommon.xsd" />
- <!-- This .xsd can handle includes with rules, but not vars, groups and sets. -->
- <!-- Rules element design -->
- <xs:complexType name="rulesType">
- <xs:sequence minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="rule" />
- </xs:sequence>
- </xs:complexType>
- <xs:group name="rule">
- <xs:choice>
- <xs:group ref="actions" />
- <xs:group ref="queuedActions" />
- <xs:group ref="ifGroup" />
- <xs:element ref="xi:include" />
- </xs:choice>
- </xs:group>
- <!-- Breakdown of rule types: basic actions -->
- <xs:group name="actions">
- <xs:choice>
- <xs:choice>
- <xs:element name="cancelspell" type="simpleCommand" />
- <xs:element name="CancelSpell" type="simpleCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="showspellinfo" type="simpleCommand" />
- <xs:element name="ShowSpellInfo" type="simpleCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="precastdelay" type="delayCommand" />
- <xs:element name="PrecastDelay" type="delayCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="castdelay" type="delayCommand" />
- <xs:element name="CastDelay" type="delayCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="midcastdelay" type="delayCommand" />
- <xs:element name="MidcastDelay" type="delayCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="aftercastdelay" type="delayCommand" />
- <xs:element name="AftercastDelay" type="delayCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="changespell" type="spellCommand" />
- <xs:element name="ChangeSpell" type="spellCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="changetarget" type="targetCommand" />
- <xs:element name="ChangeTarget" type="targetCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="defaulttarget" type="targetCommand" />
- <xs:element name="DefaultTarget" type="targetCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="enable" type="slotCommand" />
- <xs:element name="Enable" type="slotCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="disable" type="slotCommand" />
- <xs:element name="Disable" type="slotCommand" />
- </xs:choice>
- <xs:element name="return" type="simpleCommand" />
- <xs:element name="var" type="varCommand" />
- </xs:choice>
- </xs:group>
- <xs:complexType name="simpleCommand">
- </xs:complexType>
- <xs:complexType name="delayCommand">
- <xs:attribute name="delay" type="xs:decimal"/>
- <xs:attribute name="Delay" type="xs:decimal"/>
- </xs:complexType>
- <xs:complexType name="spellCommand">
- <xs:attribute name="spell" type="xs:string"/>
- <xs:attribute name="Spell" type="xs:string"/>
- </xs:complexType>
- <xs:complexType name="targetCommand">
- <xs:attribute name="target" type="xs:string"/>
- <xs:attribute name="Target" type="xs:string"/>
- </xs:complexType>
- <xs:complexType name="slotCommand">
- <xs:attribute name="slot" type="slotValues"/>
- <xs:attribute name="Slot" type="slotValues"/>
- </xs:complexType>
- <xs:simpleType name="slotValues">
- <xs:restriction base="xs:string">
- <xs:pattern value="([mM]ain|[sS]ub|[rR]ange|[aA]mmo|[hH]ead|[nN]eck|[lL]ear|[rR]ear|[bB]ody|[hH]ands|[lL]ring|[rR]ring|[bB]ack|[wW]aist|[lL]egs|[fF]eet|[aA]ll|MAIN|SUB|RANGE|AMMO|HEAD|NECK|LEAR|REAR|BODY|HANDS|LRING|RRING|BACK|WAIST|LEGS|FEET|ALL)(\|([mM]ain|[sS]ub|[rR]ange|[aA]mmo|[hH]ead|[nN]eck|[lL]ear|[rR]ear|[bB]ody|[hH]ands|[lL]ring|[rR]ring|[bB]ack|[wW]aist|[lL]egs|[fF]eet|MAIN|SUB|RANGE|AMMO|HEAD|NECK|LEAR|REAR|BODY|HANDS|LRING|RRING|BACK|WAIST|LEGS|FEET))*" />
- </xs:restriction>
- </xs:simpleType>
- <xs:complexType name="varCommand">
- <xs:attribute name="cmd">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="((set|setcalc)\s+\S+\s+\S.*)|((inc|dec)\s+\S+\s*)" />
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:complexType>
- <!-- Breakdown of rule types: queued actions -->
- <xs:group name="queuedActions">
- <xs:choice>
- <xs:choice>
- <xs:element name="equip" type="equipCommand" />
- <xs:element name="Equip" type="equipCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="changelock" type="lockCommand" />
- <xs:element name="ChangeLock" type="lockCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="addtochat" type="chatCommand" />
- <xs:element name="AddToChat" type="chatCommand" />
- </xs:choice>
- <xs:choice>
- <xs:element name="command" type="commandCommand" />
- <xs:element name="Command" type="commandCommand" />
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="equipCommand">
- <xs:group ref="slotList" />
- <xs:attribute name="when" type="whenValues" default="precast" />
- <xs:attribute name="delay">
- <xs:simpleType>
- <xs:restriction base="xs:decimal">
- <xs:minInclusive value="0" />
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="set" type="xs:string" />
- <xs:attribute name="setgroup" type="xs:string" />
- </xs:complexType>
- <xs:complexType name="lockCommand">
- <xs:attribute name="when" type="whenValues" default="precast"/>
- <xs:attribute name="slot" type="slotValues"/>
- <xs:attribute name="lock" type="xs:boolean" default="false"/>
- </xs:complexType>
- <xs:complexType name="chatCommand">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="when" type="whenValues" default="precast"/>
- <xs:attribute name="color" default="32">
- <xs:simpleType>
- <xs:restriction base="xs:integer">
- <xs:minInclusive value="0"/>
- <xs:maxInclusive value="255"/>
- </xs:restriction>
- </xs:simpleType>
- </xs:attribute>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <xs:complexType name="commandCommand">
- <xs:simpleContent>
- <xs:extension base="xs:string">
- <xs:attribute name="when" type="whenValues" default="precast"/>
- </xs:extension>
- </xs:simpleContent>
- </xs:complexType>
- <!-- Breakdown of rule types: <if> conditions -->
- <xs:group name="ifGroup">
- <xs:sequence>
- <xs:element name="if" type="conditionType" minOccurs="1" maxOccurs="1"/>
- <xs:element name="elseif" type="conditionType" minOccurs="0" maxOccurs="unbounded"/>
- <xs:element name="else" type="rulesType" minOccurs="0" maxOccurs="1"/>
- </xs:sequence>
- </xs:group>
- <xs:complexType name="conditionType">
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="rule" />
- </xs:choice>
- <xs:attributeGroup ref="conditions" />
- </xs:complexType>
- <!-- Breakdown of conditions to test for. -->
- <xs:attributeGroup name="conditions">
- <xs:attributeGroup ref="stringConditions" />
- <xs:attributeGroup ref="numericConditions" />
- <xs:attributeGroup ref="patternConditions" />
- </xs:attributeGroup>
- <xs:attributeGroup name="stringConditions">
- <xs:attribute name="advanced" type="xs:string"/>
- <xs:attribute name="buffactive" type="xs:string"/>
- <xs:attribute name="BuffActive" type="xs:string"/>
- <xs:attribute name="group" type="xs:string"/>
- <xs:attribute name="spell" type="xs:string"/>
- <xs:attribute name="Spell" type="xs:string"/>
- <xs:attribute name="area" type="xs:string"/>
- <xs:attribute name="mainjob" type="xs:string"/>
- <xs:attribute name="Mainjob" type="xs:string"/>
- <xs:attribute name="MainJob" type="xs:string"/>
- <xs:attribute name="subjob" type="xs:string"/>
- <xs:attribute name="Subjob" type="xs:string"/>
- <xs:attribute name="target" type="xs:string"/>
- <xs:attribute name="Target" type="xs:string"/>
- <xs:attribute name="spelltarget" type="xs:string"/>
- <xs:attribute name="SpellTarget" type="xs:string"/>
- <xs:attribute name="spelltargetraw" type="xs:string"/>
- <xs:attribute name="SpellTargetRaw" type="xs:string"/>
- <xs:attribute name="equipmain" type="xs:string"/>
- <xs:attribute name="equipsub" type="xs:string"/>
- <xs:attribute name="equiprange" type="xs:string"/>
- <xs:attribute name="equipammo" type="xs:string"/>
- <xs:attribute name="equiphead" type="xs:string"/>
- <xs:attribute name="equipneck" type="xs:string"/>
- <xs:attribute name="equiplear" type="xs:string"/>
- <xs:attribute name="equiprear" type="xs:string"/>
- <xs:attribute name="equipbody" type="xs:string"/>
- <xs:attribute name="equiphands" type="xs:string"/>
- <xs:attribute name="equiplring" type="xs:string"/>
- <xs:attribute name="equiprring" type="xs:string"/>
- <xs:attribute name="equipback" type="xs:string"/>
- <xs:attribute name="equipwaist" type="xs:string"/>
- <xs:attribute name="equiplegs" type="xs:string"/>
- <xs:attribute name="equipfeet" type="xs:string"/>
- <xs:attribute name="EquipMain" type="xs:string"/>
- <xs:attribute name="EquipSub" type="xs:string"/>
- <xs:attribute name="EquipRange" type="xs:string"/>
- <xs:attribute name="EquipAmmo" type="xs:string"/>
- <xs:attribute name="EquipHead" type="xs:string"/>
- <xs:attribute name="EquipBeck" type="xs:string"/>
- <xs:attribute name="EquipLEar" type="xs:string"/>
- <xs:attribute name="EquipREar" type="xs:string"/>
- <xs:attribute name="EquipBody" type="xs:string"/>
- <xs:attribute name="EquipHands" type="xs:string"/>
- <xs:attribute name="EquipLRing" type="xs:string"/>
- <xs:attribute name="EquipRRing" type="xs:string"/>
- <xs:attribute name="EquipBack" type="xs:string"/>
- <xs:attribute name="EquipWaist" type="xs:string"/>
- <xs:attribute name="EquipLegs" type="xs:string"/>
- <xs:attribute name="EquipFeet" type="xs:string"/>
- <xs:attribute name="petname" type="xs:string"/>
- <xs:attribute name="PetName" type="xs:string"/>
- <xs:attribute name="fellowname" type="xs:string"/>
- <xs:attribute name="FellowName" type="xs:string"/>
- <xs:attribute name="notadvanced" type="xs:string"/>
- <xs:attribute name="NotAdvanced" type="xs:string"/>
- <xs:attribute name="notbuffactive" type="xs:string"/>
- <xs:attribute name="NotBuffActive" type="xs:string"/>
- <xs:attribute name="notgroup" type="xs:string"/>
- <xs:attribute name="NotGroup" type="xs:string"/>
- <xs:attribute name="notspell" type="xs:string"/>
- <xs:attribute name="NotSpell" type="xs:string"/>
- <xs:attribute name="notarea" type="xs:string"/>
- <xs:attribute name="NotArea" type="xs:string"/>
- <xs:attribute name="notmainjob" type="xs:string"/>
- <xs:attribute name="NotMainJob" type="xs:string"/>
- <xs:attribute name="notsubjob" type="xs:string"/>
- <xs:attribute name="NotSubJob" type="xs:string"/>
- <xs:attribute name="nottarget" type="xs:string"/>
- <xs:attribute name="Nottarget" type="xs:string"/>
- <xs:attribute name="notspelltarget" type="xs:string"/>
- <xs:attribute name="Notspelltarget" type="xs:string"/>
- <xs:attribute name="notspelltargetraw" type="xs:string"/>
- <xs:attribute name="NotSpellTargetRaw" type="xs:string"/>
- <xs:attribute name="notequipmain" type="xs:string"/>
- <xs:attribute name="notequipsub" type="xs:string"/>
- <xs:attribute name="notequiprange" type="xs:string"/>
- <xs:attribute name="notequipammo" type="xs:string"/>
- <xs:attribute name="notequiphead" type="xs:string"/>
- <xs:attribute name="notequipneck" type="xs:string"/>
- <xs:attribute name="notequiplear" type="xs:string"/>
- <xs:attribute name="notequiprear" type="xs:string"/>
- <xs:attribute name="notequipbody" type="xs:string"/>
- <xs:attribute name="notequiphands" type="xs:string"/>
- <xs:attribute name="notequiplring" type="xs:string"/>
- <xs:attribute name="notequiprring" type="xs:string"/>
- <xs:attribute name="notequipback" type="xs:string"/>
- <xs:attribute name="notequipwaist" type="xs:string"/>
- <xs:attribute name="notequiplegs" type="xs:string"/>
- <xs:attribute name="notequipfeet" type="xs:string"/>
- <xs:attribute name="NotEquipMain" type="xs:string"/>
- <xs:attribute name="NotEquipSub" type="xs:string"/>
- <xs:attribute name="NotEquipRange" type="xs:string"/>
- <xs:attribute name="NotEquipAmmo" type="xs:string"/>
- <xs:attribute name="NotEquipHead" type="xs:string"/>
- <xs:attribute name="NotEquipNeck" type="xs:string"/>
- <xs:attribute name="NotEquipLEar" type="xs:string"/>
- <xs:attribute name="NotEquipREar" type="xs:string"/>
- <xs:attribute name="NotEquipBody" type="xs:string"/>
- <xs:attribute name="NotEquipHands" type="xs:string"/>
- <xs:attribute name="NotEquipLRing" type="xs:string"/>
- <xs:attribute name="NotEquipRRing" type="xs:string"/>
- <xs:attribute name="NotEquipBack" type="xs:string"/>
- <xs:attribute name="NotEquipWaist" type="xs:string"/>
- <xs:attribute name="NotEquipLegs" type="xs:string"/>
- <xs:attribute name="NotEquipFeet" type="xs:string"/>
- <xs:attribute name="notpetname" type="xs:string"/>
- <xs:attribute name="NotPetName" type="xs:string"/>
- <xs:attribute name="notfellowname" type="xs:string"/>
- <xs:attribute name="NotFellowName" type="xs:string"/>
- </xs:attributeGroup>
- <!-- Numeric attributes for if checks -->
- <xs:attributeGroup name="numericConditions">
- <xs:attributeGroup ref="numericTestsPlayerHPMP"/>
- <xs:attributeGroup ref="numericTestsPlayer"/>
- <xs:attributeGroup ref="numericTestsDistance"/>
- <xs:attributeGroup ref="numericTestsCasting"/>
- <xs:attributeGroup ref="numericTestsWorld"/>
- <xs:attributeGroup ref="numericTestsPet"/>
- <xs:attributeGroup ref="numericTestsTarget"/>
- <xs:attributeGroup ref="numericTestsParty"/>
- </xs:attributeGroup>
- <!-- Subgroups of numeric attributes -->
- <xs:attributeGroup name="numericTestsPlayerHPMP">
- <xs:attribute name="hp">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hpgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hplt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothp">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothpgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothplt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mp">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mplt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmp">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmplt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hpmax">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hpmaxgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="hpmaxlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothpmax">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothpmaxgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nothpmaxlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpmax">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpmaxgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpmaxlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpmax">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpmaxgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpmaxlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsPlayer">
- <xs:attribute name="tp">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tpgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tplt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottp">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottplt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <!-- Alias: mlvl -->
- <xs:attribute name="mainjoblvl">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mainjoblvlgt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mainjoblvllt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmainjoblvl">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmainjoblvlgt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmainjoblvllt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <!-- Alias: slvl -->
- <xs:attribute name="subjoblvl">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="subjoblvlgt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="subjoblvllt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notsubjoblvl">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notsubjoblvlgt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notsubjoblvllt">
- <xs:simpleType>
- <xs:union memberTypes="levelLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsDistance">
- <xs:attribute name="targetdistance">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="targetdistancegt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="targetdistancelt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottargetdistance">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottargetdistancegt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottargetdistancelt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="spelltargetdistance">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="spelltargetdistancegt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="spelltargetdistancelt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notspelltargetdistance">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notspelltargetdistancegt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notspelltargetdistancelt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsCasting">
- <xs:attribute name="tpcost">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tpcostgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tpcostlt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpcost">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpcostgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpcostlt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpcost">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpcostgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpcostlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpcost">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpcostgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpcostlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tpaftercast">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tpaftercastgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="tpaftercastlt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpaftercast">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpaftercastgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottpaftercastlt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpaftercast">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpaftercastgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="mpaftercastlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpaftercast">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpaftercastgt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmpaftercastlt">
- <xs:simpleType>
- <xs:union memberTypes="xs:nonNegativeInteger numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="casttime">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="casttimegt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="casttimelt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notcasttime">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notcasttimegt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notcasttimelt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="recast">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="recastgt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="recastlt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notrecast">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notrecastgt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notrecastlt">
- <xs:simpleType>
- <xs:union memberTypes="positiveDecimal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsWorld">
- <xs:attribute name="time">
- <xs:simpleType>
- <xs:union memberTypes="timeOfDayLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="timegt">
- <xs:simpleType>
- <xs:union memberTypes="timeOfDayLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="timelt">
- <xs:simpleType>
- <xs:union memberTypes="timeOfDayLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottime">
- <xs:simpleType>
- <xs:union memberTypes="timeOfDayLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottimegt">
- <xs:simpleType>
- <xs:union memberTypes="timeOfDayLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottimelt">
- <xs:simpleType>
- <xs:union memberTypes="timeOfDayLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="moonpct">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="moonpctgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="moonpctlt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmoonpct">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmoonpctgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notmoonpctlt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsPet">
- <xs:attribute name="pethpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pethppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pethpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpethpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpethppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpethpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="fellowhpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="fellowhppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="fellowhpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notfellowhpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notfellowhppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notfellowhpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pettp">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pettpgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pettplt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpettp">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpettpgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpettplt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pettpreal">
- <xs:simpleType>
- <xs:union memberTypes="tpLimitReal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pettprealgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimitReal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="pettpreallt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimitReal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpettpreal">
- <xs:simpleType>
- <xs:union memberTypes="tpLimitReal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpettprealgt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimitReal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpettpreallt">
- <xs:simpleType>
- <xs:union memberTypes="tpLimitReal numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsTarget">
- <xs:attribute name="targethpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="targethppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="targethpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottargethpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottargethppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="nottargethpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="spelltargethpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="spelltargethppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="spelltargethpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notspelltargethpp">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notspelltargethppgt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notspelltargethpplt">
- <xs:simpleType>
- <xs:union memberTypes="percentageLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <xs:attributeGroup name="numericTestsParty">
- <xs:attribute name="partycount">
- <xs:simpleType>
- <xs:union memberTypes="partyLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="partycountgt">
- <xs:simpleType>
- <xs:union memberTypes="partyLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="partycountlt">
- <xs:simpleType>
- <xs:union memberTypes="partyLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpartycount">
- <xs:simpleType>
- <xs:union memberTypes="partyLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpartycountgt">
- <xs:simpleType>
- <xs:union memberTypes="partyLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="notpartycountlt">
- <xs:simpleType>
- <xs:union memberTypes="partyLimit numericVar" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
- <!-- Numeric type definitions -->
- <xs:simpleType name="numericVar">
- <xs:restriction base="xs:string">
- <xs:pattern value="(\$|%).*"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="percentageLimit">
- <xs:restriction base="xs:decimal">
- <xs:minInclusive value="0"/>
- <xs:maxInclusive value="100"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="tpLimit">
- <xs:restriction base="xs:integer">
- <xs:minInclusive value="0"/>
- <xs:maxInclusive value="300"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="tpLimitReal">
- <xs:restriction base="xs:decimal">
- <xs:minInclusive value="0"/>
- <xs:maxInclusive value="300"/>
- <xs:fractionDigits value="1"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="levelLimit">
- <xs:restriction base="xs:integer">
- <xs:minInclusive value="0"/>
- <xs:maxInclusive value="99"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="partyLimit">
- <xs:restriction base="xs:integer">
- <xs:minInclusive value="1"/>
- <xs:maxInclusive value="18"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="positiveDecimal">
- <xs:restriction base="xs:decimal">
- <xs:minInclusive value="0"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="timeOfDayLimit">
- <xs:restriction base="xs:decimal">
- <xs:minInclusive value="0"/>
- <xs:maxInclusive value="23.59"/>
- <xs:fractionDigits value="2"/>
- <xs:pattern value=".*(\.[0-5][0-9])?"/>
- </xs:restriction>
- </xs:simpleType>
- <xs:attributeGroup name="patternConditions">
- <xs:attribute name="mode" type="modeValues" default="And"/>
- <xs:attribute name="playername" type="Names"/>
- <xs:attribute name="PlayerName" type="Names"/>
- <xs:attribute name="commandprefix" type="prefixValues"/>
- <xs:attribute name="validtarget" type="targetValues" />
- <xs:attribute name="ValidTarget" type="targetValues" />
- <xs:attribute name="element" type="elementValues"/>
- <xs:attribute name="Element" type="elementValues"/>
- <xs:attribute name="type" type="typeValues"/>
- <xs:attribute name="Type" type="typeValues"/>
- <xs:attribute name="skill" type="skillValues"/>
- <xs:attribute name="Skill" type="skillValues"/>
- <xs:attribute name="status" type="statusValues"/>
- <xs:attribute name="Status" type="statusValues"/>
- <xs:attribute name="day" type="dayValues"/>
- <xs:attribute name="Day" type="dayValues"/>
- <xs:attribute name="dayelement" type="elementValues"/>
- <xs:attribute name="DayElement" type="elementValues"/>
- <xs:attribute name="weather" type="weatherValues"/>
- <xs:attribute name="Weather" type="weatherValues"/>
- <xs:attribute name="weatherelement" type="weatherElementValues"/>
- <xs:attribute name="WeatherElement" type="weatherElementValues"/>
- <xs:attribute name="moon" type="moonValues"/>
- <xs:attribute name="Moon" type="moonValues"/>
- <xs:attribute name="targettype" type="targetTypeValues"/>
- <xs:attribute name="TargetType" type="targetTypeValues"/>
- <xs:attribute name="spelltargettype" type="targetTypeValues"/>
- <xs:attribute name="SpellTargetType" type="targetTypeValues"/>
- <xs:attribute name="targetisallymember" type="ZeroOrOne"/>
- <xs:attribute name="TargetIsAllyMember" type="ZeroOrOne"/>
- <xs:attribute name="spelltargetisallymember" type="ZeroOrOne"/>
- <xs:attribute name="SpellTargetIsAllyMember" type="ZeroOrOne"/>
- <xs:attribute name="petisvalid" type="xs:boolean"/>
- <xs:attribute name="PetIsValid" type="xs:boolean"/>
- <xs:attribute name="petelement" type="elementValues"/>
- <xs:attribute name="PetElement" type="elementValues"/>
- <xs:attribute name="fellowisvalid" type="xs:boolean"/>
- <xs:attribute name="FellowIsValid" type="xs:boolean"/>
- <xs:attribute name="notplayername" type="Names"/>
- <xs:attribute name="NotPlayerName" type="Names"/>
- <xs:attribute name="notcommandprefix" type="prefixValues"/>
- <xs:attribute name="notvalidtarget" type="targetValues" />
- <xs:attribute name="notelement" type="elementValues"/>
- <xs:attribute name="NotElement" type="elementValues"/>
- <xs:attribute name="nottype" type="typeValues"/>
- <xs:attribute name="NotType" type="typeValues"/>
- <xs:attribute name="notskill" type="skillValues"/>
- <xs:attribute name="NotSkill" type="skillValues"/>
- <xs:attribute name="notstatus" type="statusValues"/>
- <xs:attribute name="NotStatus" type="statusValues"/>
- <xs:attribute name="notday" type="dayValues"/>
- <xs:attribute name="NotDay" type="dayValues"/>
- <xs:attribute name="notdayelement" type="elementValues"/>
- <xs:attribute name="NotDayElement" type="elementValues"/>
- <xs:attribute name="notweather" type="weatherValues"/>
- <xs:attribute name="NotWeather" type="weatherValues"/>
- <xs:attribute name="notweatherelement" type="weatherElementValues"/>
- <xs:attribute name="NotWeatherElement" type="weatherElementValues"/>
- <xs:attribute name="notmoon" type="moonValues"/>
- <xs:attribute name="NotMoon" type="moonValues"/>
- <xs:attribute name="nottargettype" type="targetTypeValues"/>
- <xs:attribute name="NotTargetType" type="targetTypeValues"/>
- <xs:attribute name="notspelltargettype" type="targetTypeValues"/>
- <xs:attribute name="NotSpellTargetType" type="targetTypeValues"/>
- <xs:attribute name="nottargetisallymember" type="ZeroOrOne"/>
- <xs:attribute name="NotSpellTargetIsAllyMember" type="ZeroOrOne"/>
- <xs:attribute name="notpetisvalid" type="xs:boolean"/>
- <xs:attribute name="NotPetIsValid" type="xs:boolean"/>
- <xs:attribute name="notpetelement" type="elementValues"/>
- <xs:attribute name="NotPetElement" type="elementValues"/>
- <xs:attribute name="notfellowisvalid" type="xs:boolean"/>
- <xs:attribute name="NotFellowIsValid" type="xs:boolean"/>
- </xs:attributeGroup>
- <!-- Enumerations/patterns for various value types. -->
- <xs:simpleType name="wildcardsAndVars">
- <xs:restriction base="xs:string">
- <xs:pattern value="(.*\*.*)|(.*\$.+)|(.*%.+)" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="modeValues">
- <xs:restriction base="xs:string">
- <xs:pattern value="[aA]nd|AND|[oO]r|OR" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="ZeroOrOne">
- <xs:restriction base="xs:string">
- <xs:pattern value="0|1" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="YesOrNoBool">
- <xs:restriction base="xs:string">
- <xs:pattern value="(yes|true|1)|(no|false|0)" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType name="Names">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([a-zA-Z]{3,16})(\|([a-zA-Z]{3,16}))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="whenValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([pP]recast|[mM]idcast|[aA]ftercast|[aA]utoset|[iI]dle|[eE]ngaged|[rR]esting|[aA]ll|PRECAST|MIDCAST|AFTERCAST|AUTOSET|IDLE|ENGAGED|RESTING|ALL)(\|([pP]recast|[mM]idcast|[aA]ftercast|[aA]utoset|[iI]dle|[eE]ngaged|[rR]esting|PRECAST|MIDCAST|AFTERCAST|AUTOSET|IDLE|ENGAGED|RESTING))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="prefixValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="(/jobability|/magic|/ninjutsu|/pet|/range|/song|/weaponskill|/trigger)(\|(/jobability|/magic|/ninjutsu|/pet|/range|/song|/weaponskill|/trigger))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="statusValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([eE]ngaged|[iI]dle|[rR]esting|[dD]ead|ENGAGED|IDLE|RESTING|DEAD)(\|([eE]ngaged|[iI]dle|[rR]esting|[dD]ead|ENGAGED|IDLE|RESTING|DEAD))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="targetValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([aA]lly|[cC]orpse|[eE]nemy|npc|[pP]arty|[sS]elf|ALLY|CORPSE|ENEMY|NPC|PARTY|SELF)(\|([aA]lly|[cC]orpse|[eE]nemy|npc|[pP]arty|[sS]elf|ALLY|CORPSE|ENEMY|NPC|PARTY|SELF))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="targetTypeValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([nN]one|[mM]onster|[nN]pc|[pP]layer|[sS]elf|NONE|MONSTER|NPC|PLAYER|SELF)(\|([nN]one|[mM]onster|[nN]pc|[pP]layer|[sS]elf|NONE|MONSTER|NPC|PLAYER|SELF))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="typeValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([bB]ard[sS]ong|[bB]lack[mM]agic|[bB]lue[mM]agic|[bB]lood[pP]act[rR]age|[bB]lood[pP]act[wW]ard|[cC]orsair[rR]oll|[cC]orsair[sS]hot|[jJ]ob[aA]bility|[nN]injutsu|[pP]et[cC]ommand|[sS]ummoner[pP]act|[wW]eapon[sS]kill|[wW]hite[mM]agic|[sS]tep|[wW]altz|[sS]amba|[jJ]ig|[fF]lourish[123]|[sS]cholar|[mM]onster|[mM]isc|[tT]rigger|BARDSONG|BLACKMAGIC|BLUEMAGIC|BLOODPACTRAGE|BLOODPACTWARD|CORSAIRROLL|CORSAIRSHOT|JOBABILITY|NINJUTSU|PETCOMMAND|SUMMONERPACT|WEAPONSKILL|WHITEMAGIC|STEP|WALTZ|SAMBA|JIG|FLOURISH[123]|SCHOLAR|MONSTER|MISC|TRIGGER)(\|([bB]ard[sS]ong|[bB]lack[mM]agic|[bB]lue[mM]agic|[bB]lood[pP]act[rR]age|[bB]lood[pP]act[wW]ard|[cC]orsair[rR]oll|[cC]orsair[sS]hot|[jJ]ob[aA]bility|[nN]injutsu|[pP]et[cC]ommand|[sS]ummoner[pP]act|[wW]eapon[sS]kill|[wW]hite[mM]agic|[sS]tep|[wW]altz|[sS]amba|[jJ]ig|[fF]lourish[123]|[sS]cholar|[mM]onster|[mM]isc|[tT]rigger|BARDSONG|BLACKMAGIC|BLUEMAGIC|BLOODPACTRAGE|BLOODPACTWARD|CORSAIRROLL|CORSAIRSHOT|JOBABILITY|NINJUTSU|PETCOMMAND|SUMMONERPACT|WEAPONSKILL|WHITEMAGIC|STEP|WALTZ|SAMBA|JIG|FLOURISH[123]|SCHOLAR|MONSTER|MISC|TRIGGER))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="skillValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([bB]lue[mM]agic|[dD]ark[mM]agic|[dD]ivine[mM]agic|[eE]lemental[mM]agic|[eE]nfeebling[mM]agic|[eE]nhancing[mM]agic|[hH]ealing[mM]agic|[nN]injutsu|[sS]inging|[sS]ummoning[mM]agic|[tT]rigger|[gG]eneric[tT]rigger|[cC]ontrol[tT]rigger|[cC]ombat[tT]rigger|[eE]lemental[tT]rigger|BLUEMAGIC|DARKMAGIC|DIVINEMAGIC|ELEMENTALMAGIC|ENFEEBLINGMAGIC|ENHANCINGMAGIC|HEALINGMAGIC|NINJUTSU|SINGING|SUMMONINGMAGIC|TRIGGER|GENERICTRIGGER|CONTROLTRIGGER|COMBATTRIGGER|ELEMENTALTRIGGER)(\|([bB]lue[mM]agic|[dD]ark[mM]agic|[dD]ivine[mM]agic|[eE]lemental[mM]agic|[eE]nfeebling[mM]agic|[eE]nhancing[mM]agic|[hH]ealing[mM]agic|[nN]injutsu|[sS]inging|[sS]ummoning[mM]agic|[tT]rigger|[gG]eneric[tT]rigger|[cC]ontrol[tT]rigger|[cC]ombat[tT]rigger|[eE]lemental[tT]rigger|BLUEMAGIC|DARKMAGIC|DIVINEMAGIC|ELEMENTALMAGIC|ENFEEBLINGMAGIC|ENHANCINGMAGIC|HEALINGMAGIC|NINJUTSU|SINGING|SUMMONINGMAGIC|TRIGGER|GENERICTRIGGER|CONTROLTRIGGER|COMBATTRIGGER|ELEMENTALTRIGGER))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="elementValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([fF]ire|[iI]ce|[wW]ind|[eE]arth|[tT]hunder|[wW]ater|[lL]ight|[dD]ark|FIRE|ICE|WIND|EARTH|THUNDER|WATER|LIGHT|DARK)(\|([fF]ire|[iI]ce|[wW]ind|[eE]arth|[tT]hunder|[wW]ater|[lL]ight|[dD]ark|FIRE|ICE|WIND|EARTH|THUNDER|WATER|LIGHT|DARK))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="dayValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([fF]iresday|[iI]ceday|[wW]indsday|[eE]arthsday|[[lL]ightningday|[wW]atersday|[lL]ightsday|[dD]arksday|FIRESDAY|ICEDAY|WINDSDAY|EARTHSDAY|LIGHTNINGDAY|WATERSDAY|LIGHTSDAY|DARKSDAY)(\|([fF]iresday|[iI]ceday|[wW]indsday|[eE]arthsday|[[lL]ightningday|[wW]atersday|[lL]ightsday|[dD]arksday|FIRESDAY|ICEDAY|WINDSDAY|EARTHSDAY|LIGHTNINGDAY|WATERSDAY|LIGHTSDAY|DARKSDAY))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="weatherValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([cC]lear|[sS]unshine|[cC]louds|[fF]og|[fF]ire|[fF]ire x2|[wW]ater|[wW]ater x2|[eE]arth|[eE]arth x2|[wW]ind|[wW]ind x2|[iI]ce|[iI]ce x2|[tT]hunder|[tT]hunder x2|[lL]ight|[lL]ight x2|[dD]ark|[dD]ark x2|CLEAR|SUNSHINE|CLOUDS|FOG|FIRE|FIRE X2|WATER|WATER X2|EARTH|EARTH X2|WIND|WIND X2|ICE|ICE X2|THUNDER|THUNDER X2|LIGHT|LIGHT X2|DARK|DARK X2)(\|([cC]lear|[sS]unshine|[cC]louds|[fF]og|[fF]ire|[fF]ire x2|[wW]ater|[wW]ater x2|[eE]arth|[eE]arth x2|[wW]ind|[wW]ind x2|[iI]ce|[iI]ce x2|[tT]hunder|[tT]hunder x2|[lL]ight|[lL]ight x2|[dD]ark|[dD]ark x2|CLEAR|SUNSHINE|CLOUDS|FOG|FIRE|FIRE X2|WATER|WATER X2|EARTH|EARTH X2|WIND|WIND X2|ICE|ICE X2|THUNDER|THUNDER X2|LIGHT|LIGHT X2|DARK|DARK X2))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="weatherElementValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([nN]one|[fF]ire|[iI]ce|[wW]ind|[eE]arth|[tT]hunder|[wW]ater|[lL]ight|[dD]ark|NONE|FIRE|ICE|WIND|EARTH|THUNDER|WATER|LIGHT|DARK)(\|([nN]one|[fF]ire|[iI]ce|[wW]ind|[eE]arth|[tT]hunder|[wW]ater|[lL]ight|[dD]ark|NONE|FIRE|ICE|WIND|EARTH|THUNDER|WATER|LIGHT|DARK))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- <xs:simpleType name="moonValues">
- <xs:union memberTypes="wildcardsAndVars">
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="([nN]ew [mM]oon|[wW]axing [cC]rescent|[fF]irst [qQ]uarter [mM]oon|[wW]axing [gG]ibbous|[fF]ull [mM]oon|[wW]aning [gG]ibbous|[lL]ast [qQ]uarter [mM]oon|[wW]aning [cC]rescent|NEW MOON|WAXING CRESCENT|FIRST QUARTER MOON|WAXING GIBBOUS|FULL MOON|WANING GIBBOUS|LAST QUARTER MOON|WANING CRESCENT)(\|([nN]ew [mM]oon|[wW]axing [cC]rescent|[fF]irst [qQ]uarter [mM]oon|[wW]axing [gG]ibbous|[fF]ull [mM]oon|[wW]aning [gG]ibbous|[lL]ast [qQ]uarter [mM]oon|[wW]aning [cC]rescent|NEW MOON|WAXING CRESCENT|FIRST QUARTER MOON|WAXING GIBBOUS|FULL MOON|WANING GIBBOUS|LAST QUARTER MOON|WANING CRESCENT))*" />
- </xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:schema>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement