Navigáció: Főoldal / Függelék / B függelék
B Függelék: Az OpenMath kódformái
Az OpenMath nyelvnek kétféle kódolási formája van: az egyik az emberi megértésre alkalmas XML formátumú kódolás (ebben a dolgozatban is ezt használtam), a másik pedig az ún. bájtfolyam típusú, mely inkább matematikai alkalmazásoknál használatos.
Ez utóbbi kódolásnál minden egyes XML-kódolású OpenMath szimbólumnak van egy bájtokban leírt megfelelője, ezért a terjengősebb XML típusú kódnál jóval rövidebb, tömörebb.
Lássunk egy példát a két kódolás összehasonlítására!
Az egyenlet XML kódolással:
<OMOBJ>
<OMA>
<OMS cd="arith" name="times"/>
<OMA>
<OMS cd="arith" name="plus"/>
<OMV name="x"/>
<OMV name="y"/>
</OMA>
<OMA>
<OMS cd="arith" name="plus"/>
<OMV name="x"/>
<OMV name="z"/>
</OMA>
</OMA>
</OMOBJ>
Ugyanaz bájtfolyamban:
18 10 08 05 05 61 72 69 74 68 74 69 6d 65 73 10 08 05 04 61 72 69 74 68 70
6c 75 73 05 01 78 05 01 79 11 10 48 01 45 00 05 01 7a 11 11 19
A fenti bájtok jelentése a következő:
18 az objektum kezdete
10 a kifejezés kezdete
08 a művelet kezdete
05 a CD nevének hossza
05 a művelet nevének hosszainnen kezdődik a CD neve
61 a
72 r
69 i
74 t
68 hinnen kezdődik a művelet neve
74 t
69 i
6d m
65 e
73 s
10 a kifejezés kezdete
08 a művelet kezdete
05 a CD nevének hossza
04 a művelet nevének hosszainnen kezdődik a CD neve
61 a
72 r
69 i
74 t
68 hinnen kezdődik a művelet neve
70 p
6c l
75 u
73 s
05 a változó kezdete
01 a változó nevének hossza
78 a változó neve (“x”)
05 a változó kezdete
01 a változó nevének hossza
79 a változó neve (“y”)
11 a kifejezés vége
10 a kifejezés kezdete
48 a művelet kezdete
01 utalás az előző műveletre (“arith” - “plus”)
45 a változó kezdete
00 a változó kezdete, utalás az első változóra (“x”)
05 a változó kezdete
01 a változó nevének hossza
7a a változó neve (“z”)
11 kifejezés vége
11 kifejezés vége
19 objektum vége