Common XML tags and types
Following document was generated by a modification of xs3p stylesheet. It contains definitions of tags and types used in both geogebra.xml and geogebra_macro.xml files, which are the most important part of GeoGebra file format. For a brief introduction see XML reference.
Global Declarations
Element: cascell
XML Instance Representation
<cascell>
<cellPair> [1..*]
Start Sequence [0..1]
<inputCell> [1]
<expression> … </expression> [1]
</inputCell>
<outputCell> [1]
<expression> … </expression> [1]
</outputCell>
End Sequence
</cellPair>
</cascell>
Element: construction
XML Instance Representation
<construction
title="xs:string [0..1]"
author="xs:string [0..1]"
date="xs:string [0..1]"
>
Start Choice [0..*]
<command
name="xs:string [1]"
type="xs:string [0..1]"
var="xs:string [0..1]"
<casMap> casMap </casMap> [0..1]
<input> ioType </input> [1]
<outputSizes> stringVal </outputSizes> [0..1]
<output> ioType </output> [1]
</command>
<expression
exp="xs:string [0..1]"
label="xs:string [0..1]"
type="elType [0..1]"
/> [1]
End Choice
</construction>
Element: element
XML Instance Representation
<element
type="elType [0..1]"
label="xs:string [0..1]"
>
Start Choice [0..*]
<absoluteScreenLocation> xyCoords </absoluteScreenLocation> [0..1]
<allowReflexAngle> boolVal </allowReflexAngle> [0..1]
<auxiliary> boolVal </auxiliary> [0..1]
<arcSize> intVal </arcSize> [0..1]
<animation> animation </animation> [0..1]
<caption> stringVal </caption> [0..1]
<comboBox> boolVal </comboBox> [0..1]
<condition
showObject="xs:string [0..1]"
/> [0..1]
<checkbox
fixed="xs:boolean [0..1]"
/> [0..1]
<coefficients
rep="representation [0..1]"
data="data [0..1]"
/> [0..1]
<coords> coords </coords> [0..1]
<coordStyle
style="coordStyles [0..1]"
/> [0..1]
<casMap> casMap </casMap> [0..1]
<decoration
type="decorTypes [0..1]"
/> [0..1]
<eigenvectors> eigenvectors </eigenvectors> [0..1]
<emphasizeRightAngle> boolVal </emphasizeRightAngle> [0..1]
<eqnStyle
style="eqnStyles [1]"
parameter="xs:string [0..1]"
/> [0..1]
<file
name="xs:string [0..1]"
/> [0..1]
<fixed> boolVal </fixed> [0..1]
<isShape> boolVal </isShape> [0..1]
<font> fontProperties </font> [0..1]
<angleStyle> intVal </angleStyle> [0..1]
<forceReflexAngle> boolVal </forceReflexAngle> [0..1]
<ggbscript> stringVal </ggbscript> [0..1]
<inBackground> boolVal </inBackground> [0..1]
<interpolate> boolVal </interpolate> [0..1]
<javascript> stringVal </javascript> [0..1]
<keepTypeOnTransform> boolVal </keepTypeOnTransform> [0..1]
<isLaTeX> boolVal </isLaTeX> [0..1]
<lineStyle
thickness="nonNegInt [0..1]"
type="lineTypes [0..1]"
typeHidden="xs:integer [0..1]"
opacity="xs:double [0..1]"
/> [0..1]
<labelMode> intVal </labelMode> [0..1]
<labelOffset> xyCoords </labelOffset> [0..1]
<layer> intVal </layer> [0..1]
<levelOfDetail> intVal </levelOfDetail> [0..1]
<linkedGeo
exp="xs:string [0..1]"
/> [0..1]
<listType
val="elType [0..1]"
/> [0..1]
<matrix> matrix </matrix> [0..1]
<objColor> objColorType </objColor> [0..1]
<bgColor> rgbaColor </bgColor> [0..1]
<outlyingIntersections> boolVal </outlyingIntersections> [0..1]
<pointSize> doubleVal </pointSize> [0..1]
<fading> doubleVal </fading> [0..1]
<pointStyle
val="pointStyles [0..1]"
/> [0..1]
<dimensions
width="xs:double [0..1]"
height="xs:double [0..1]"
/> [0..1]
<embed
id="xs:int [0..1]"
app="xs:string [0..1]"
/> [0..1]
<selectedIndex> intVal </selectedIndex> [0..1]
<selectionAllowed> boolVal </selectionAllowed> [0..1]
<show
object="xs:boolean [0..1]"
label="xs:boolean [0..1]"
ev="nonNegInt [0..1]"
/> [0..1]
<slider> slider </slider> [0..1]
<slopeTriangleSize> intVal </slopeTriangleSize> [0..1]
<spreadsheetTrace> spreadsheetTrace </spreadsheetTrace> [0..1]
<startPoint> expCoords </startPoint> [0..1]
<tooltipMode
val="tooltipModes [0..1]"
/> [0..1]
<tags> [0..1]
<tag
key="xs:string [0..1]"
value="xs:string [0..1]"
/> [0..1]
</tags>
<trace> boolVal </trace> [0..1]
<symbolic> boolVal </symbolic> [0..1]
<userinput
show="xs:boolean [0..1]"
value="xs:string [0..1]"
valid="xs:boolean [0..1]"
/> [0..1]
<value
val="doubleOrBool [1]"
random="xs:boolean [0..1]"
/> [0..1]
End Choice
</element>
Element: expression
XML Instance Representation
<expression
value="xs:string [0..1]"
error="xs:boolean [0..1]"
evalCommand="xs:string [0..1]"
evalComment="xs:string [0..1]"
/>
==Global Definitions==
Type: animation
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
step="xs:string [0..1]"
speed="xs:string [0..1]"
type="nonNegInt [0..1]"
playing="xs:boolean [0..1]"
/>
Type: boolVal
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
val="xs:boolean [1]"
/>
Type: casMap
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…>
<entry
key="xs:string [0..1]"
val="xs:string [0..1]"
/> [1..*]
</…>
Type: coords
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
x="xs:double [0..1]"
y="xs:double [0..1]"
z="xs:double [0..1]"
w="xs:double [0..1]"
ox="xs:double [0..1]"
oy="xs:double [0..1]"
oz="xs:double [0..1]"
ow="xs:double [0..1]"
vx="xs:double [0..1]"
vy="xs:double [0..1]"
vz="xs:double [0..1]"
vw="xs:double [0..1]"
/>
Type: doubleVal
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
val="xs:double [1]"
/>
Type: eigenvectors
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
x0="xs:double [1]"
x1="xs:double [1]"
x2="xs:double [0..1]"
y0="xs:double [1]"
y1="xs:double [1]"
y2="xs:double [0..1]"
z0="xs:double [1]"
z1="xs:double [1]"
z2="xs:double [0..1]"
/>
Type: expCoords
Super-types: |
None |
Sub-types: |
None |
Either exp (for relative start point) or numbers x, y, z (for absolute start point) must be entered. Number parameter is valid only for image elements and refers to one of the corners (1 to 3)
XML Instance Representation
<…
number="nonNegInt [0..1]"
x="xs:double [0..1]"
y="xs:double [0..1]"
z="xs:double [0..1]"
exp="xs:string [0..1]"
/>
Type: fontProperties
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
serif="xs:boolean [0..1]"
size="nonNegInt [0..1]"
sizeM="xs:double [0..1]"
style="nonNegInt [0..1]"
/>
Type: ioType
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
a0="xs:string [0..1]"
a1="xs:string [0..1]"
a2="xs:string [0..1]"
a3="xs:string [0..1]"
a4="xs:string [0..1]"
a5="xs:string [0..1]"
a6="xs:string [0..1]"
a7="xs:string [0..1]"
a8="xs:string [0..1]"
a9="xs:string [0..1]"
a10="xs:string [0..1]"
a11="xs:string [0..1]"
a12="xs:string [0..1]"
a13="xs:string [0..1]"
a14="xs:string [0..1]"
a15="xs:string [0..1]"
a16="xs:string [0..1]"
a17="xs:string [0..1]"
a18="xs:string [0..1]"
a19="xs:string [0..1]"
a20="xs:string [0..1]"
a21="xs:string [0..1]"
a22="xs:string [0..1]"
a23="xs:string [0..1]"
a24="xs:string [0..1]"
a25="xs:string [0..1]"
a26="xs:string [0..1]"
a27="xs:string [0..1]"
a28="xs:string [0..1]"
a29="xs:string [0..1]"
a30="xs:string [0..1]"
a31="xs:string [0..1]"
a32="xs:string [0..1]"
a33="xs:string [0..1]"
a34="xs:string [0..1]"
a35="xs:string [0..1]"
a36="xs:string [0..1]"
a37="xs:string [0..1]"
a38="xs:string [0..1]"
a39="xs:string [0..1]"
a40="xs:string [0..1]"
a41="xs:string [0..1]"
a42="xs:string [0..1]"
a43="xs:string [0..1]"
a44="xs:string [0..1]"
a45="xs:string [0..1]"
a46="xs:string [0..1]"
a47="xs:string [0..1]"
a48="xs:string [0..1]"
a49="xs:string [0..1]"
/>
Type: matrix
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
A0="xs:double [1]"
A1="xs:double [1]"
A2="xs:double [1]"
A3="xs:double [1]"
A4="xs:double [1]"
A5="xs:double [1]"
A6="xs:double [0..1]"
A7="xs:double [0..1]"
A8="xs:double [0..1]"
A9="xs:double [0..1]"
/>
Type: objColorType
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
r="nonNegInt [1]"
g="nonNegInt [1]"
b="nonNegInt [1]"
dynamicr="xs:string [0..1]"
dynamicg="xs:string [0..1]"
dynamicb="xs:string [0..1]"
dynamica="xs:string [0..1]"
fillType="fills [0..1]"
colorSpace="colorSpaces [0..1]"
alpha="xs:double [0..1]"
hatchAngle="xs:double [0..1]"
hatchDistance="xs:double [0..1]"
image="xs:string [0..1]"
inverseFill="xs:boolean [0..1]"
/>
Type: rgbColor
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
r="nonNegInt [1]"
g="nonNegInt [1]"
b="nonNegInt [1]"
/>
Type: rgbaColor
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
r="nonNegInt [1]"
g="nonNegInt [1]"
b="nonNegInt [1]"
alpha="nonNegInt [0..1]"
/>
Type: slider
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
min="xs:string [0..1]"
max="xs:string [0..1]"
width="xs:double [1]"
x="xs:double [1]"
y="xs:double [1]"
fixed="xs:boolean [1]"
absoluteScreenLocation="xs:boolean [0..1]"
horizontal="xs:boolean [1]"
showAlgebra="xs:boolean [0..1]"
/>
Type: spreadsheetTrace
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
traceColumn1="xs:integer [0..1]"
traceColumn2="xs:integer [0..1]"
traceRow1="xs:integer [0..1]"
traceRow2="xs:integer [0..1]"
tracingRow="xs:integer [0..1]"
numRows="xs:integer [0..1]"
headerOffset="xs:integer [0..1]"
doColumnReset="xs:boolean [0..1]"
doRowLimit="xs:boolean [0..1]"
showLabel="xs:boolean [0..1]"
showTraceList="xs:boolean [0..1]"
doTraceGeoCopy="xs:boolean [0..1]"
/>
Type: stringVal
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
val="xs:string [1]"
/>
Type: xyCoords
Super-types: |
None |
Sub-types: |
None |
XML Instance Representation
<…
x="xs:double [1]"
y="xs:double [1]"
/>
Type: algebraStyles
Super-types: |
xs:int < algebraStyles (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 2
Meaning of values:0=value,1=definition,2=command.
Type: angleUnits
Super-types: |
xs:string < angleUnits (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = degree|radiant
Type: axisIds
Super-types: |
xs:int < axisIds (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 2
Meanings of values: 0=x, 1=y, 2=z
Type: axisTypes
Super-types: |
xs:int < axisTypes (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 15
Meaning of values: bit0 = draw positive arrow, bit1 = bold, bit2 = draw negative arrow, bit3 = fill arrows
Type: colorSpaces
Super-types: |
xs:int < colorSpaces (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 2
Meaning of values:0=RGB,1=HSB,2=HSL.
Type: coordStyles
Super-types: |
xs:string < coordStyles (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = cartesian|polar|complex
Type: data
Super-types: |
xs:string < data (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = \[(\[.\],?)\]
Type: decorTypes
Super-types: |
xs:int < decorTypes (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 6
Meanings of values: 0=none, 1=single tick,2=double tick, 3=triple tick, 4=simple arrow, 5=double arrow, 6=triple arrow.square, 2=dot,3=L (Belgian style).
Type: doubleOrBool
Super-types: |
None |
Sub-types: |
None |
-
Union of following types:
-
xs:double
-
xs:boolean
-
specialDouble === Type: elType
-
Super-types: |
xs:string < elType (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = (angle|line|plane|point|polygon|polyline|ray|segment|vector|(curve|surface)cartesian|implicit(poly|surface))(3d)?|boolean|button|conic(3d)?(part)?|function(NVar)?|image|list|locus|numeric|quadric(limited|part)?|text(field)?|turtle|net|polyhedron|penstroke|audio|video|embed
Type: eqnStyles
Super-types: |
xs:string < eqnStyles (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = implicit|explicit|specific|parametric
Type: fills
Super-types: |
xs:int < fills (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 7
Meaning of values:
-
0=STANDARD,
-
1=HATCH,
-
2=CROSSHATCHED,
-
3=CHESSBOARD,
-
4=DOTTED,
-
5=HONEYCOMB,
-
6=BRICK,
-
7=IMAGE
Type: gridTypes
Super-types: |
xs:int < gridTypes (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 3
Meanings of values: 0=cartesian (major), 1=isometric, 2=polar, 3=cartesian (minor+major)
Type: javaDouble
Super-types: |
xs:string < javaDouble (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = Infinity|-Infinity|NaN|(-?[0-9.E]*)
Type: lineTypes
Super-types: |
xs:int < lineTypes (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
value comes from list: \{'0'|'10'|'15'|'20'|'30'}
Meanings of values: 0=full, 10=dashed short,15=dashed long,20=dotted,30=dashed dotted
Type: nonNegInt
Super-types: |
xs:integer < nonNegInt (by restriction) |
Sub-types: |
None |
-
Base XSD Type: integer
-
value >= 0
Type: pointCapturings
Super-types: |
xs:int < pointCapturings (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 3
Meanings of values: 0=off, 1=on, 2=on grid,3=automatic.
Type: pointStyles
Super-types: |
xs:int < pointStyles (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
-1 ⇐ value ⇐ 9
Meanings of values: -1=use global default, 0=full dot, 1=cross, 2=empty dot, 3=plus sign, 4=full diamond, 5=empty diamond, 6=triangle north, 7=triangle south, 8=triangle east, 9=triangle west.
Type: positiveInt
Super-types: |
xs:integer < positiveInt (by restriction) |
Sub-types: |
None |
-
Base XSD Type: integer
-
value >= 1
Type: representation
Super-types: |
xs:string < representation (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = array
Possible ways for representing coefficients, only 1 possibility in 4.0
Type: rightAngleStyles
Super-types: |
xs:int < rightAngleStyles (by restriction) |
Sub-types: |
None |
-
Base XSD Type: int
-
0 ⇐ value ⇐ 3
Meanings of values: 0=none, 1=square, 2=dot,3=L (Belgian style).
Type: specialDouble
Super-types: |
xs:string < specialDouble (by restriction) |
Sub-types: |
None |
-
Base XSD Type: string
-
pattern = Infinity|-Infinity