Home Forum Downloads My Favorites Register FAQ Mark Forums Read

Go Back   EQInterface Forums > Developer Discussion > XML modification help.
User Name
Password

Reply
 
Thread Tools Display Modes
Old 07-12-2004, 08:40 AM   #1
wyndam
A Gray Wolf
 
wyndam's Avatar
 
Join Date: Jan 2003
Server: Ayonae Ro
Posts: 7
Interface Author - Click to view interfaces
Send a message via AIM to wyndam Send a message via Yahoo to wyndam
Arrow XML Schema Definition for EQUI

I looked through the Archive and Development sections, so my apologies if I missed a thread already covering this.

I was wondering if anyone had an XML Schema for EQUI, be it produced or reverse-engineered. I think it would be of great help to User Interface Developers who might use tools like XMLSpy.

Thanks in Advance.
wyndam is offline   Reply With Quote
Old 07-16-2004, 05:19 AM   #2
Gadmovorg
A Fire Beetle
 
Join Date: Jan 2003
Posts: 3
Default

XMLSpy is just great. Well i tried to make a schema but til now without success. The "aboutSidl.doc" says something about SIDL.xml would be an definition (schema) but to my knowledge its only a wellformed XML. Either it is a special unofficial XML version or i didnt learn standard XML .
I even let XMLSpy generate a schema but it doesnt work. I will try abit more. In case (doubtful) i get a wellformed and valid XML schema defintion of the EQUI i'll post it here.

Last edited by Gadmovorg : 07-16-2004 at 05:32 AM.
Gadmovorg is offline   Reply With Quote
Old 07-20-2004, 10:12 AM   #3
Gadmovorg
A Fire Beetle
 
Join Date: Jan 2003
Posts: 3
Default

Its far more work than i have expected
The only big problem im facing if i use my schema definition i cant create the head

...
<Schema xmlns="EverquestData" xmlns:dt="EverQuestTypes"/>
...

Maybe i lack some knowledge but afaik i cant use ":" within an attribute definition. Can anyone confirm it ?
Any advice is welcome!

So i choose this workaround where i use "xmlnsdt" instead of "xmlns:dt". After you are done with your xml you will need to modify the headerpart or EQ wont use it ...

Quote:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="XML">
<xs:element name="Schema">
<xs:complexType>
<xs:attribute name="xmlns" type="xs:string" use="required" fixed="EverQuestData"/>
<xs:attribute name="xmlnsdt" type="xs:string" use="required" fixed="EverQuestDataTypes"/>
</xs:complexType>
</xs:element>
...
<xs:element name="XML">
<xs:complexType>
<xs:sequence>
<xs:element ref="Schema"/>
<xs:element ref="Gauge" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="Screen"/>
<xs:element ref="Location"/>
<xs:element ref="Size"/>
</xs:sequence>
<xs:attribute name="ID" type="xs:string" use="required" fixed="EQInterfaceDefinitionLanguage"/>
</xs:complexType>
</xs:element>
</xs:schema>




Still working on it... just finished the "Gauge" element.
Gadmovorg is offline   Reply With Quote
Old 07-21-2004, 07:59 AM   #4
Gadmovorg
A Fire Beetle
 
Join Date: Jan 2003
Posts: 3
Default

Elements i have finished:
-All elements done

Things to do:
-Adjustments and improvments


BTW anyone still interested in that schema definition ?

edit: updated progress

Last edited by Gadmovorg : 07-23-2004 at 05:17 AM.
Gadmovorg is offline   Reply With Quote
Old 06-20-2006, 10:48 AM   #5
Angahran
Premium Member
 
Join Date: Sep 2002
Posts: 360
Interface Author - Click to view interfaces
Default Interested...

I have just started to look at xmlspy, so I would be interested in a working schema

I have been modifying the UI for years using the notepad method but thought I'd take a look at something more fancy (I still can't believe the developers don't have anything better than notepad and the EQ client)

Thanks.

Ang.
Angahran is offline   Reply With Quote
Old 08-07-2006, 04:41 PM   #6
shillingworth
A Predatory Creeper
 
Join Date: Dec 2002
Server: Bertoxxulous
Posts: 251
Interface Author - Click to view interfaces
Default

Dunno how well this one will work, but generated a schema from sidl.xml which is workin for me in visual studio 8.

Code:
<?xml version="1.0" encoding="utf-8" ?> <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="XML"> <xs:complexType> <xs:attribute name="xmlns" type="xs:string" use="required" fixed="EverQuestData" /> <xs:attribute name="xmlnsdt" type="xs:string" use="required" fixed="EverQuestDataTypes" /> </xs:complexType> </xs:element> <xs:element name="Class"> <xs:complexType> <xs:attribute name="item" type="string" /> </xs:complexType> </xs:element> <xs:element name="RGB"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Alpha" type="int" default="255" /> <xs:attribute name="R" type="int" default="255" /> <xs:attribute name="G" type="int" default="255" /> <xs:attribute name="B" type="int" default="255" /> </xs:complexType> </xs:element> <xs:element name="Point"> <xs:complexType> <xs:attribute name="X" type="int" default="0" /> <xs:attribute name="Y" type="int" default="0" /> </xs:complexType> </xs:element> <xs:element name="Size"> <xs:complexType> <xs:attribute name="CX" type="int" /> <xs:attribute name="CY" type="int" /> </xs:complexType> </xs:element> <xs:element name="TextureInfo"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Size" type="Size" /> </xs:complexType> </xs:element> <xs:element name="Frame"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Texture" type="string" /> <xs:attribute name="Location" type="Point" /> <xs:attribute name="Size" type="Size" /> <xs:attribute name="Hotspot" type="Point" /> <xs:attribute name="Duration" type="int" default="1000" /> <xs:attribute name="Shading" type="RGB" minOccurs="0" maxOccurs="*" /> <xs:attribute name="Specular" type="RGB" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="Ui2DAnimation"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Cycle" type="boolean" /> <xs:attribute name="Grid" type="boolean" /> <xs:attribute name="Vertical" type="boolean" /> <xs:attribute name="CellWidth" type="int" default="0" /> <xs:attribute name="CellHeight" type="int" default="0" /> <xs:attribute name="Frames" type="Frame" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="ButtonDrawTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Normal" type="Ui2DAnimation:item" /> <xs:attribute name="Pressed" type="Ui2DAnimation:item" /> <xs:attribute name="Flyby" type="Ui2DAnimation:item" /> <xs:attribute name="Disabled" type="Ui2DAnimation:item" /> <xs:attribute name="PressedFlyby" type="Ui2DAnimation:item" /> <xs:attribute name="NormalDecal" type="Ui2DAnimation:item" /> <xs:attribute name="PressedDecal" type="Ui2DAnimation:item" /> <xs:attribute name="FlybyDecal" type="Ui2DAnimation:item" /> <xs:attribute name="DisabledDecal" type="Ui2DAnimation:item" /> <xs:attribute name="PressedFlybyDecal" type="Ui2DAnimation:item" /> </xs:complexType> </xs:element> <xs:element name="GaugeDrawTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Background" type="Ui2DAnimation:item" /> <xs:attribute name="Fill" type="Ui2DAnimation:item" /> <xs:attribute name="Lines" type="Ui2DAnimation:item" /> <xs:attribute name="LinesFill" type="Ui2DAnimation:item" /> <xs:attribute name="EndCapRight" type="Ui2DAnimation:item" /> <xs:attribute name="EndCapLeft" type="Ui2DAnimation:item" /> </xs:complexType> </xs:element> <xs:element name="SpellGemDrawTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Holder" type="Ui2DAnimation:item" /> <xs:attribute name="Background" type="Ui2DAnimation:item" /> <xs:attribute name="Highlight" type="Ui2DAnimation:item" /> </xs:complexType> </xs:element> <xs:element name="FrameTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="TopLeft" type="Ui2DAnimation:item" /> <xs:attribute name="Top" type="Ui2DAnimation:item" /> <xs:attribute name="TopRight" type="Ui2DAnimation:item" /> <xs:attribute name="RightTop" type="Ui2DAnimation:item" /> <xs:attribute name="Right" type="Ui2DAnimation:item" /> <xs:attribute name="RightBottom" type="Ui2DAnimation:item" /> <xs:attribute name="BottomRight" type="Ui2DAnimation:item" /> <xs:attribute name="Bottom" type="Ui2DAnimation:item" /> <xs:attribute name="BottomLeft" type="Ui2DAnimation:item" /> <xs:attribute name="LeftTop" type="Ui2DAnimation:item" /> <xs:attribute name="Left" type="Ui2DAnimation:item" /> <xs:attribute name="LeftBottom" type="Ui2DAnimation:item" /> <xs:attribute name="Middle" type="Ui2DAnimation:item" /> <xs:attribute name="OverlapLeft" type="int" default="0" /> <xs:attribute name="OverlapTop" type="int" default="0" /> <xs:attribute name="OverlapRight" type="int" default="0" /> <xs:attribute name="OverlapBottom" type="int" default="0" /> </xs:complexType> </xs:element> <xs:element name="ScrollbarDrawTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="UpButton" type="ButtonDrawTemplate" /> <xs:attribute name="DownButton" type="ButtonDrawTemplate" /> <xs:attribute name="Thumb" type="FrameTemplate" /> <xs:attribute name="MiddleTextureInfo" type="string" /> <xs:attribute name="MiddleTint" type="RGB" /> </xs:complexType> </xs:element> <xs:element name="WindowDrawTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Background" type="TextureInfo:item" /> <xs:attribute name="VSBTemplate" type="ScrollbarDrawTemplate" /> <xs:attribute name="HSBTemplate" type="ScrollbarDrawTemplate" /> <xs:attribute name="CloseBox" type="ButtonDrawTemplate" /> <xs:attribute name="QMarkBox" type="ButtonDrawTemplate" /> <xs:attribute name="MinimizeBox" type="ButtonDrawTemplate" /> <xs:attribute name="TileBox" type="ButtonDrawTemplate" /> <xs:attribute name="Border" type="FrameTemplate" /> <xs:attribute name="Titlebar" type="FrameTemplate" /> </xs:complexType> </xs:element> <xs:element name="SliderDrawTemplate"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Thumb" type="ButtonDrawTemplate" /> <xs:attribute name="Background" type="Ui2DAnimation:item" /> <xs:attribute name="EndCapRight" type="Ui2DAnimation:item" /> <xs:attribute name="EndCapLeft" type="Ui2DAnimation:item" /> </xs:complexType> </xs:element> <xs:element name="ScreenPiece"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="ScreenID" type="string" /> <xs:attribute name="Font" type="int" default="3" /> <xs:attribute name="RelativePosition" type="boolean" default="true" /> <xs:attribute name="Location" type="Point" /> <xs:attribute name="Size" type="Size" /> <xs:attribute name="AutoStretch" type="boolean" default="false" /> <xs:attribute name="TopAnchorToTop" type="boolean" default="true" /> <xs:attribute name="LeftAnchorToLeft" type="boolean" default="true" /> <xs:attribute name="BottomAnchorToTop" type="boolean" default="true" /> <xs:attribute name="RightAnchorToLeft" type="boolean" default="true" /> <xs:attribute name="TopAnchorOffset" type="int" default="0" /> <xs:attribute name="BottomAnchorOffset" type="int" default="0" /> <xs:attribute name="LeftAnchorOffset" type="int" default="0" /> <xs:attribute name="RightAnchorOffset" type="int" default="0" /> <xs:attribute name="Text" type="string" /> <xs:attribute name="TextColor" type="RGB" /> </xs:complexType> </xs:element> <xs:element name="StaticScreenPiece"> <xs:complexType> <xs:attribute type="ScreenPiece" /> <xs:attribute name="AutoDraw" type="boolean" default="true" /> </xs:complexType> </xs:element> <xs:element name="StaticAnimation"> <xs:complexType> <xs:attribute type="StaticScreenPiece" /> <xs:attribute name="Animation" type="Ui2DAnimation:item" /> </xs:complexType> </xs:element> <xs:element name="StaticText"> <xs:complexType> <xs:attribute type="StaticScreenPiece" /> <xs:attribute name="NoWrap" type="boolean" default="false" /> <xs:attribute name="AlignCenter" type="boolean" default="false" /> <xs:attribute name="AlignRight" type="boolean" default="false" /> </xs:complexType> </xs:element> <xs:element name="StaticFrame"> <xs:complexType> <xs:attribute type="StaticScreenPiece" /> <xs:attribute name="FrameTemplate" type="FrameTemplate:item" /> </xs:complexType> </xs:element> <xs:element name="StaticHeader"> <xs:complexType> <xs:attribute type="StaticScreenPiece" /> <xs:attribute name="FrameTemplate" type="FrameTemplate:item" /> <xs:attribute name="TextReference" type="string" /> <xs:attribute name="TextColor" type="RGB" /> </xs:complexType> </xs:element> <xs:element name="Control"> <xs:complexType> <xs:attribute type="ScreenPiece" /> <xs:attribute name="Style_VScroll" type="boolean" default="false" /> <xs:attribute name="Style_HScroll" type="boolean" default="false" /> <xs:attribute name="Style_Transparent" type="boolean" default="false" /> <xs:attribute name="Style_Border" type="boolean" /> <xs:attribute name="TooltipReference" type="string" /> <xs:attribute name="DrawTemplate" type="WindowDrawTemplate:item" /> </xs:complexType> </xs:element> <xs:element name="ListboxColumn"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="Header" type="FrameTemplate:item" /> <xs:attribute name="Heading" type="string" /> <xs:attribute name="Width" type="int" /> <xs:attribute name="Sortable" type="boolean" /> <xs:attribute name="DataType" type="string" /> </xs:complexType> </xs:element> <xs:element name="Listbox"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="Columns" type="ListboxColumn" minOccurs="0" maxOccurs="*" /> <xs:attribute name="OwnerDraw" type="boolean" /> </xs:complexType> </xs:element> <xs:element name="Button"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="Style_Checkbox" type="boolean" /> <xs:attribute name="RadioGroup" type="string" /> <xs:attribute name="Text" type="string" /> <xs:attribute name="ButtonDrawTemplate" type="ButtonDrawTemplate" /> <xs:attribute name="SoundPressed" type="string" /> <xs:attribute name="SoundUp" type="string" /> <xs:attribute name="SoundFlyby" type="string" /> <xs:attribute name="DecalOffset" type="Point" /> <xs:attribute name="DecalSize" type="Size" /> </xs:complexType> </xs:element> <xs:element name="Gauge"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="GaugeDrawTemplate" type="GaugeDrawTemplate" /> <xs:attribute name="EQType" type="int" /> <xs:attribute name="FillTint" type="RGB" /> <xs:attribute name="DrawLinesFill" type="boolean" /> <xs:attribute name="LinesFillTint" type="RGB" /> <xs:attribute name="TextOffsetX" type="int" default="0" /> <xs:attribute name="TextOffsetY" type="int" default="0" /> <xs:attribute name="GaugeOffsetX" type="int" default="0" /> <xs:attribute name="GaugeOffsetY" type="int" default="16" /> </xs:complexType> </xs:element> <xs:element name="SpellGem"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="SpellGemDrawTemplate" type="SpellGemDrawTemplate" /> <xs:attribute name="SpellIconOffsetX" type="int" default="0" /> <xs:attribute name="SpellIconOffsetY" type="int" default="0" /> </xs:complexType> </xs:element> <xs:element name="InvSlot"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="EQType" type="int" /> <xs:attribute name="Background" type="Ui2DAnimation:item" /> <xs:attribute name="ItemOffsetX" type="int" default="0" /> <xs:attribute name="ItemOffsetY" type="int" default="0" /> </xs:complexType> </xs:element> <xs:element name="Editbox"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="Style_Multiline" type="boolean" /> </xs:complexType> </xs:element> <xs:element name="Slider"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="SliderArt" type="SliderDrawTemplate:item" /> </xs:complexType> </xs:element> <xs:element name="Label"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="EQType" type="int" /> <xs:attribute name="NoWrap" type="boolean" default="false" /> <xs:attribute name="AlignCenter" type="boolean" default="false" /> <xs:attribute name="AlignRight" type="boolean" default="false" /> </xs:complexType> </xs:element> <xs:element name="STMLbox"> <xs:complexType> <xs:attribute type="Control" /> </xs:complexType> </xs:element> <xs:element name="Combobox"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="Button" type="ButtonDrawTemplate:item" /> <xs:attribute name="ListHeight" type="int" /> <xs:attribute name="Choices" type="string" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="Page"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="TabText" type="string" /> <xs:attribute name="TabTextColor" type="RGB" /> <xs:attribute name="TabTextActiveColor" type="RGB" /> <xs:attribute name="TabIcon" type="Ui2DAnimation:item" /> <xs:attribute name="TabIconActive" type="Ui2DAnimation:item" /> <xs:attribute name="Pieces" type="ScreenPiece:item" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="TabBox"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="TabBorderTemplate" type="FrameTemplate:item" /> <xs:attribute name="PageBorderTemplate" type="FrameTemplate:item" /> <xs:attribute name="Pages" type="Page:item" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="LayoutBox"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="Spacing" type="int" default="5" /> <xs:attribute name="Pieces" type="ScreenPiece:item" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="HorizontalLayoutBox"> <xs:complexType> <xs:attribute type="LayoutBox" /> </xs:complexType> </xs:element> <xs:element name="VerticalLayoutBox"> <xs:complexType> <xs:attribute type="LayoutBox" /> </xs:complexType> </xs:element> <xs:element name="FinderBox"> <xs:complexType> <xs:attribute type="VerticalLayoutBox" /> </xs:complexType> </xs:element> <xs:element name="Screen"> <xs:complexType> <xs:attribute type="Control" /> <xs:attribute name="Style_Titlebar" type="boolean" /> <xs:attribute name="Style_Closebox" type="boolean" /> <xs:attribute name="Style_Qmarkbox" type="boolean" /> <xs:attribute name="Style_Minimizebox" type="boolean" /> <xs:attribute name="Style_Sizable" type="boolean" /> <xs:attribute name="Pieces" type="ScreenPiece:item" minOccurs="0" maxOccurs="*" /> </xs:complexType> </xs:element> <xs:element name="SuiteDefaults"> <xs:complexType> <xs:attribute type="Class" /> <xs:attribute name="DefaultWindowDrawTemplate" type="WindowDrawTemplate:item" /> <xs:attribute name="CursorDefault" type="Ui2DAnimation:item" /> <xs:attribute name="CursorResizeNS" type="Ui2DAnimation:item" /> <xs:attribute name="CursorResizeEW" type="Ui2DAnimation:item" /> <xs:attribute name="CursorResizeNESW" type="Ui2DAnimation:item" /> <xs:attribute name="CursorResizeNWSE" type="Ui2DAnimation:item" /> <xs:attribute name="CursorDrag" type="Ui2DAnimation:item" /> </xs:complexType> </xs:element> </xs:schema>
shillingworth is offline   Reply With Quote
Old 08-30-2006, 02:05 AM   #7
Angahran
Premium Member
 
Join Date: Sep 2002
Posts: 360
Interface Author - Click to view interfaces
Default

Shillingworth,

I opened that schema in XMLSpy and got the following error

Quote:
The schema doesn't appear to be valid by itself (as a part of another schema, it might still be OK).
Attribute 'minOccurs' is not allowed in element <xs:attribute>
Hint: Attribute is neither explicitly allowed nor covered by attribute wildcard {any except http://www.w3.org/2001/XMLSchema}.
Error location: xs:schema / xs:element / xs:complexType / xs:attribute / @minOccurs
Details
cvc-wildcard-namespace: Wildcard {any except http://www.w3.org/2001/XMLSchema} does not allow the namespace name of 'minOccurs'.
cvc-elt.5.2.1: The element <xs:attribute> is not valid with respect to the actual type definition 'xs:attribute'.
Angahran is offline   Reply With Quote
Reply



Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off


All times are GMT -5. The time now is 06:01 PM.


vBulletin Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© MMOUI