<?xml version="1.0" encoding="windows-1251"?>
<manifest xmlns="http://www.imsglobal.org/xsd/imscp_v1p1">
    <organizations>
        <organization identifier="builtins" structure="hierarchical">
            <title>Встроенные функции Флэнга</title>
            <item identifier="arithfuncs">
                <title>Арифметические функции</title>
                <metadata>
                    <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                        <imsmd:implementation>
                            <imsmd:Revision>
                                <imsmd:Correction>???</imsmd:Correction>
                                <imsmd:Reason>Операции определены только для целых чисел</imsmd:Reason>
                            </imsmd:Revision>
                            <imsmd:Revision>
                                <imsmd:Correction>???</imsmd:Correction>
                                <imsmd:Reason>Нужно добавить mod</imsmd:Reason>
                            </imsmd:Revision>
                        </imsmd:implementation>
                    </imsmd:lom>
                </metadata>
                <item identifier="plus2">
                    <title>+</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 + Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Float/Integer/String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое слагаемое</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Float/Integer/String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе слагаемое</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Float/Integer/String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">В зависимости от типа аргумента: если суммируются числа, то результат также является числом (целым или вещественным), если хотя бы одним из аргументов является строка, то функция действует как конкатенация, объединяющая две строки. Если второй аргумент не является строкой, он переводится в строку по стандартным правилам.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">результат суммирования</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="minus2">
                    <title>-</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 - Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">уменьшаемое</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вычитаемое</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer/Float</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">вычитает из первого аргумент второй аргумент</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">разность</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="multiply2">
                    <title>*</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 * Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый сомножитель</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второй сомножитель</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer/Float</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">умножает аргументы</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">результат умножения</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="divide2">
                    <title>div</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 div Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">делимое</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">делитель</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer/Float</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">делит нацело первый аргумент на второй аргумент</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">результат деления</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Стандартный знак деления "/" используется во Флэнге для других целей (для работы с xml-термами)</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="uminus1">
                    <title>-</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>- Arg</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer/Float</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">меняет знак целого числа</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">целое число, обратное аргументу</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="lt2">
                    <title>&lt;&lt;</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 &lt;&lt; Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое сравниваемое число или строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе сравниваемое число или строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет, является ли первое число или строка строго меньше аргумента - числа или строки. В случае строк используется лексикографический порядок</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="leq2">
                    <title>&lt;=</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 &lt;= Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет, является ли первое число меньшим или равным второму числу</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="equal2">
                    <title>==</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 == Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое сравниваемое значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе сравниваемое значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет на равенство два объекта</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат. Внимание: если объект является сложным (например, xml-термом, списком и т.д), то аргументы будут равны только в том случае, если они содержат один и тот же объект. Сравнение разных объектов производится функцией equal</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                            <imsmd:implementation>
                                <imsmd:Revision>
                                    <imsmd:Correction>???</imsmd:Correction>
                                    <imsmd:Reason>Пока работает только для целых чисел и атомов, хотя проверка на тип не производится</imsmd:Reason>
                                </imsmd:Revision>
                            </imsmd:implementation>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="geq2">
                    <title>&gt;=</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 &gt;= Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет, является ли первое число меньшим, либо равным второму</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="gt2">
                    <title>&gt;&gt;</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 &gt;&gt; Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float/String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое сравниваемое значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float/String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе сравниваемое значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">сравнивает, больше ли первый аргумент второго. В случае строки используется лексикографический порядок</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="geq2">
                    <title>&gt;=</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 &gt;= Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первое сравниваемое число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>Integer/Float</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второе сравниваемое число</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет, является ли первый аргумент большим или равным второму аргументу</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
            </item>
            <item identifier="termsfuncs">
                <title>Функции работы с объектами (термами)</title>
                <item identifier="unify2">
                    <title>=</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Term1 = Term2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Term1</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый унифицируемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Term2</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второй унифицируемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">в процессе унификации (совмещения) вместо свободных переменных в термах подставляются значения, делающие термы равными.</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="ident1">
                    <title>ident/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>ident(Expr)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Expr</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">произвольное выражение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Object</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">тождественная функция, возвращающая значение своего аргумента</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">значение аргумента</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="struct1">
                    <title>struct/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>struct(Functor)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Functor</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">имя и местность функтора в формате имя/местность.</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Декларирует в системе новую структуру, задаваемую аргументом Functor. Аргумент должен быть строкой в формате имя/местность. Hапример если аргумент равен "f/3", то в дальнейшем выражения вида f(X, Y, Z) будут пониматься системой как термы (структуры).</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
            </item>
            <item identifier="lists">
                <title>Списки</title>
                <item identifier="emptylist">
                    <title>[]</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Константа []</imsmd:function>
                                <imsmd:ResultType>List</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Атом пустого списка</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="RmUAsAPc">
                    <title>|</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>[Head | Tail]</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Head</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Голова (первый элемент) списка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Tail</imsmd:Argument>
                                    <imsmd:Type>List</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Хвост (список остальных элементов)</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>List</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Конструктор списка [Head | Tail] присоединяет элемент Head к списку Tail в качестве первого элемента.</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
            </item>
            <item identifier="hashtables">
                <title>Работа с хэш-таблицами</title>
                <item identifier="newHash0">
                    <title>newHash/0</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>newHash()</imsmd:function>
                                <imsmd:ResultType>Hash</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Порождает новую пустую хэш-таблицу.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">пустая хэш-таблица</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="newHash1">
                    <title>newHash/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>newHash(Contents)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Contents</imsmd:Argument>
                                    <imsmd:Type>List/Vector</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">содержимое хэш-таблицы</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Hash</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Создает новую хэш-таблицу с парами ключ-значение, перечисленными в Contents в виде списков или векторов, элементами которых являются термы вида ключ/значение. Элементами списка/вектора могут быть также другие hash-таблицы. В этом случае функция переносит в новую хэш-таблицу данные из этих хэш-таблиц.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Хэш-таблица</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Аргумент функции может быть как вектором, так и списком. При порождении хэш-таблицы функция перебирает элементы Contents аналогично тому, как это делает перечисление eFlat. Поэтому аргумент функции может содержать вложенные списки и вектора и их смешение. Элементарными единицами Contents могут быть термы вида n/v, где n и v - произвольные элементы, а также другие хэш-таблицы. В последнем случае в порождаемую хэш-таблицу добавляется содержимое этой хэш-таблицы.</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hClear1">
                    <title>hClear/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hClear(H)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">очищаемая hash-таблица</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Hash</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Удаляет все ключи и значения из hash-таблицы</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Очищенная пустая hash-таблица</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hClone1">
                    <title>hClone/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hClone(H)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">клонируемая hash-таблица</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Hash</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Делает копию hash-таблицы</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Копия hash-таблицы</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hasValue2">
                    <title>hasValue/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hasValue(H, V)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">hash-таблица, в которой проверяется значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>V</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">проверяемое значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет, содержится ли значение V в таблице H</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hasKey2">
                    <title>hasKey/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hasKey(H, K)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">hash-таблица, в которой проверяется наличие ключа</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>K</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">ключ, проверяемый на наличие в таблице</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет наличие ключа K в таблице H</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hGet2">
                    <title>hGet/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hGet(H, K)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">hash-таблица, в которой ведется поиск</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>K</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">ключ, по которому ведется поиск</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Object</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Выдает значение, соответствующее ключу K</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Значение ключа K</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hPut3">
                    <title>hPut/3</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hPut(H, K, V)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">таблица, в которую включается пара ключ-значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>K</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">ключ</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>V</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Добавляет в таблицу H пару ключ-значение</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="hRemove2">
                    <title>hRemove/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>hRemove(H, K)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>H</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">таблица, из которой удаляется ключ</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>K</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">удаляемый ключ</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Удаляет из таблицы H ключ K с соответствующими значениями.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Возвращает значение, привязанное к данному ключу (если есть), либо null</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="getContext2">
                    <title>getContext/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>getContext(OldEnv, NewEnv)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>OldEnv</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">изменяемый контекст (набор пар ключ/значение)</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>NewEnv</imsmd:Argument>
                                    <imsmd:Type>Hash</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">изменяющий контекст</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Hash</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Объединяет hash-таблицы (контексты) OldEnv и NewEnv. Значения общих ключей выбираются из нового контекста NewEnv</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Таблица, в которой в контекст OldEnv добавлены пары из NewEnv, причем если ключ определен в обоих контекстах, то значение выбирается из NewEnv</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Функция в первую очередь ориентирована на обработку xml- и html-термов. Пример: объединение множеств атрибутов getContext(newHash([color="red", size="15"], newHash([color="blue", font="Arial"]) дает hash-таблицу {color/"blue", size/"15", font/"Arial"}</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
            </item>
            <item identifier="strings">
                <title>Работа со строками</title>
                <item identifier="pluss1">
                    <title>+</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Arg1 + Arg2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg1</imsmd:Argument>
                                    <imsmd:Type>String/Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый аргумент</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Arg2</imsmd:Argument>
                                    <imsmd:Type>String/Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">второй аргумент</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">если хотя бы один из аргументов является строкой, другой аргумент конвертируется в строку, после чего строки объединяются</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Строка-конкатенация</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">по крайней мере один из аргументов должен быть строкой</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="lts2">
                    <title>&lt;&lt;</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Obj1 &lt;&lt; Obj2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj1</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj2</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">втроой сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Если хотя бы один из аргументов является строкой, то приводит второй аргумент к строковому виду, после чего лексикогрфически сравнивает объекты по схеме функции sCompareIgnoreCase/2. Равен true, если первый объект лексикографически меньше второго объекта</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="gts2">
                    <title>&gt;&gt;</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Obj1 &gt;&gt; Obj2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj1</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj2</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">втроой сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Если хотя бы один из аргументов является строкой, то приводит второй аргумент к строковому виду, после чего лексикогрфически сравнивает объекты по схеме функции sCompareIgnoreCase/2. Равен true, если первый объект лексикографически больше второго объекта</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="les2">
                    <title>&lt;=</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Obj1 &lt;= Obj2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj1</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj2</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">втроой сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Если хотя бы один из аргументов является строкой, то приводит второй аргумент к строковому виду, после чего лексикогрфически сравнивает объекты по схеме функции sCompareIgnoreCase/2. Равен true, если первый объект лексикографически меньше или равен второму объекту</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="ges2">
                    <title>&gt;=</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>Obj1 &gt;= Obj2</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj1</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первый сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj2</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">втроой сравниваемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Если хотя бы один из аргументов является строкой, то приводит второй аргумент к строковому виду, после чего лексикогрфически сравнивает объекты по схеме функции sCompareIgnoreCase/2. Равен true, если первый объект лексикографически больше или равен второму объекту.</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isString1">
                    <title>isString/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isString(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">проверяемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли аргумент строкой</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sLength1">
                    <title>sLength/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sLength(String)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка, у которой определяется длина</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Вычисляет длину строки</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Целочисленное значение длины строки</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sCharAt2">
                    <title>sCharAt/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sCharAt(String, Idx)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Idx</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">индекс строки</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Вычисляет длину строки</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Целочисленное значение длины строки</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isEqual2">
                    <title>isEqual/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isEqual(String1, String2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String1</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String2</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вторая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">проверяет, совпадают ли две строки</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true/fail</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">предикат</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sCompare2">
                    <title>sCompare/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sCompare(String1, String2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String1</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первая сравниваемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String2</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вторая сравниваемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">лексикографически сравнивает строки</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">целочисленное значение: если меньше 0, то первая строка лексикографически меньше второй, если 0, то строки равны, если больше 0, то вторая строка лексикографически меньше первой</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sCompareIgnoreCase2">
                    <title>sCompareIgnoreCase/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sCompareIgnoreCase(String1, String2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String1</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первая сравниваемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String2</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вторая сравниваемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">лексикографически сравнивает строки без учета регистра</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">целочисленное значение: если меньше 0, то первая строка лексикографически меньше второй, если 0, то строки равны, если больше 0, то вторая строка лексикографически меньше первой</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sToLowerCase1">
                    <title>sToLowerCase/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sToLowerCase(String)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Обрабатываемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Порождает строку, в которой заглавные буквы строки-аргумента заменены на строчные</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Строка со строчными символами</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sToUpperCase1">
                    <title>sToUpperCase/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sToUpperCase(String)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">обрабатываемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Порождает строку, в которой строчные буквы строки-аргумента заменены на заглавные</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Строка с заглавными буквами</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sIndexOf2">
                    <title>sIndexOf/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sIndexOf(String1, String2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String1</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">cтрока, в которой ищется подстрока</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String2</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">искомая подстрока</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Ищет вхождение строки 2 в строку 1. Возвращает индекс первого вхождения строки 2 в строку 1.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Возвращает индекс первого вхождения строки 2 в строку 1</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sLastIndexOf2">
                    <title>sLastIndexOf/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sIndexOf(String1, String2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String1</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Строка, в которой ищется вхождение строки String2</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String2</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Строка, последнее вхождение которой ищется в строке String1</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Аналогична sIndexOf/1, но ищет не первое, а последнее вхождение подстроки</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Позиция последнего вхождения строки String2 в String1.</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="subString2">
                    <title>subString/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>subString(String, Idx1, Idx2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка, в который вырезается подстрока</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Idx1</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">начальный индекс вырезаемой подстроки</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Idx2</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">конечный индекс вырезаемой подстроки</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Вырезает в строке подстроку</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Вырезаемая подстрока</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sAppend2">
                    <title>sAppend/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sAppend(String1, String2)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String1</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">первая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>String2</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вторая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">присоединяет справа строку 2 к строке 1</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">объединенная строка</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sValueOf1">
                    <title>sValueOf/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sValueOf(Term)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Term</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">преобразуемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">конвертирует объект в строчный вид</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">строка, представляющая преобразуемый объект</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sTrim1">
                    <title>sTrim/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sTrim(Str)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Str</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка, у которой удаляются пробелы</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Удаляет пробелы с обоих концов строки</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Строка без пробелов на концах</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Удаляются символы, чей код не больше кода пробела (32).</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sNorm1">
                    <title>sNorm/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sNorm(Str)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Str</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">нормализуемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Нормализует строку-аргумент: удаляя пробельные символы с концов строки и заменяя последовательности пробельных символов внутри строки одним символом пробела</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Нормализованная строка</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="startsWith3">
                    <title>startsWith/3</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>startsWith(Str, Prefix, Offset)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Str</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка, начало которой сравнивается со вторым аргументом</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Prefix</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка-префикс</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Offset</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Позиция в первой строке, с которой начинается проверка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, начинается ли строка Str с индекса Offset строкой Prefix</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если условие выполняется, fail в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sEndsWith2">
                    <title>sEndsWith/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sEndsWith(Str, Suffix)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Str</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">сравниваемая строка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Suffix</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">строка-окончание</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, заканчивается ли строка Str подстрокой Suffix</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если условие выполняется, fail в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sReplace2">
                    <title>sReplace/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sReplace(Pattern, Input)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Pattern</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Шаблон, по которому проводится замена, например "s/(\d):/($1)/g"</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Input</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Входная строка, в которой проводятся замены</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">В соответствии с правилами Perl5 пытается провести замену подстрок, удовлетворяющих шаблону. Стандартным образом используются \1.., $1, а также ключи - g, i, x, m</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Результирующая строка, полученная из входном после операций замены</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Пример: результатом sReplace("s/http:\/\/[\/\.\w\-\?~_@&amp;=%]+/&lt;a href='$0'&gt;$0&lt;\/a&gt;/", "Flang home page: http://www.teacode.com/flang"); будет "Flang home page: &lt;a href='http://www.teacode.com/flang'&gt;http://www.teacode.com/flang&lt;/a&gt;"</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sMatch2">
                    <title>sMatch/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sMatch(Pattern, InputString)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Pattern</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Шаблон, по которому внутри строки ищется соответствие</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>InputString</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Строка, в которой ищется соответствие</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Данная функция инициализирует поиск в строке InputString подстроки, соответствующей шаблону Pattern. Результат работы этой функции в дальнейшем доступен с помощью функции sGroup/1</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Пример: sMatch("/\d:.*?(?=\d:)/", "1: haha 2: hehe 3: hoho"); возвращает true, кроме того устанавливается соответствие между группами шаблона и первым вариантом установки соответствия между шаблоном и подстрокой обрабатываемой строки</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sMatch0">
                    <title>sMatch/0</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sMatch()</imsmd:function>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Находит очередное совпадение шаблона и подстроки, инициализированное sMatch/2. Результаты совпадения получаются с помощью функции sGroup/1</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Истина, если очередное совпадение найдено</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sGroup1">
                    <title>sGroup/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sGroup(GroupNum)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>GroupNum</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Номер группы, результат совпадения которой с подстрокой необходимо вернуть</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>String</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Выдает подстроку, которая совместилась с группой, имеющей номер GroupNum, во время последнего применения функции sMatch.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Строка, совпавшая с группой с номером GroupNum при последнем применении функции sMatch.</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Группа - часть шаблона, заключенная в круглые скобки. Группы нумеруются в порядке вхождения открывающих скобок группы в шаблон. Например, шаблон "((.*)-.*)- " содержит две группы: первая - ((.*)-.*) и вторая (.*). При этом группа с номером 0 - все совпавшее выражение. Пример: после вызова sMatch("/((.*)-.*)-/", "ab-cd-e"), будут следующие результаты: sGroup(0)="ab-cd-" sGroup(1)="ab-cd" и sGroup(2)="ab"</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="sSplit2">
                    <title>sSplit2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>sSplit(PatternSeparator, SplittedString)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>PatternSeparator</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Шаблон, разделяющей строку на подстроки</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>SplittedString</imsmd:Argument>
                                    <imsmd:Type>String</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Строка, разбиваемая на подстроки в соответствии с шаблоном</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Enumeration</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Разбивает строку SplittedString на подстроки в соответствии с шаблоном PatternSeparator.</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Перечисление подстрок входной строки, разделенных шаблоном PatternSeparator</imsmd:langstring>
                                </imsmd:Result>
                                <imsmd:Notes>
                                    <imsmd:langstring xml:lang="ru">Пример: разбиение sSplit("/, /", "1, 2, 3") разбивает строку "1, 2, 3" на три подстроки "1", "2" и "3", последовательность которых формируется в виде перечисления</imsmd:langstring>
                                </imsmd:Notes>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
            </item>
            <item identifier="vectors">
                <title>Работа с векторами</title>
                <item identifier="newVector1">
                    <title>newVector/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>newVector(Data)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Data</imsmd:Argument>
                                    <imsmd:Type>Integer/List</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">если аргумент - число, то определяется стартовая длина вектора, если - список, то вектор формируется явно из элементов списка</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Vector</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">порождает новый вектор. Если аргументом функции является число N, то порождается вектор длины N, содержащий N новых свободных переменных. Если аргумент - список, то вектор формируется из элементов списка</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">вектор</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="vGet2">
                    <title>vGet/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>vGet(V, Idx)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>V</imsmd:Argument>
                                    <imsmd:Type>Vector</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вектор, в котором выбирается значение</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Idx</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">позиция значения, которое выбирается в векторе</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Object</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">выбирает Idx-ный элемент вектора V</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">выбранный элемент вектора V</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="vSet3">
                    <title>vSet/3</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>vSet(V, Idx, Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>V</imsmd:Argument>
                                    <imsmd:Type>Vector</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вектор, у которого изменяется значение элемента</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Idx</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">индекс изменяемого элемента вектора (неотрицательное целое число)</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Значение, присваиваемое Idx-ному элементу вектора</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Object</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Объект Obj становится Idx-ным элементом вектора V</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">значение объекта Obj</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="vRemove2">
                    <title>vRemove/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>vRemove(V, Idx)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>V</imsmd:Argument>
                                    <imsmd:Type>Vector</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Вектор, в котором удаляется элемент</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Idx</imsmd:Argument>
                                    <imsmd:Type>Integer</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Индекс удаляемого элемента</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Object</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Удаляет элемент с номером Idx из вектора V, уменьшая количество элементов V на 1</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Удаляемый элемент</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="vAdd2">
                    <title>vAdd/2</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>vAdd(Vector, Elem)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Vector</imsmd:Argument>
                                    <imsmd:Type>Vector</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вектор, в который добавляется элемент</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Elem</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">элемент, добавляемый в вектор</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Vector</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Добавляет элемент в конец вектора</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">функция возвращает вектор с добавленным элементом</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="vLength1">
                    <title>vLength/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>vLength(Vec)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Vec</imsmd:Argument>
                                    <imsmd:Type>Vector</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">вектор, у которого измеряется длина</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Integer</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Измеряет длину вектора</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">Возвращает неотрицательное целое число, являющееся длиной вектора</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
            </item>
            <item identifier="typesconv">
                <title>Работа с типами и конвертация типов</title>
                <item identifier="FPYcsfZa">
                    <title>Тип Object</title>
                </item>
                <item identifier="mutpDkOR">
                    <title>Элемент null</title>
                </item>
                <item identifier="tQtTKhUf">
                    <title>Тип Integer</title>
                </item>
                <item identifier="zUVzdWrJ">
                    <title>Тип Float</title>
                </item>
                <item identifier="fDzElkPR">
                    <title>Тип String</title>
                </item>
                <item identifier="lDqjOHsV">
                    <title>Тип Hash</title>
                </item>
                <item identifier="VULUhPYE">
                    <title>Тип Vector</title>
                </item>
                <item identifier="IDSYiPmI">
                    <title>Тип Enum</title>
                </item>
                <item identifier="TcZvGwTk">
                    <title>Тип Atom</title>
                </item>
                <item identifier="Term">
                    <title>Тип Term</title>
                </item>
                <item identifier="isVar1">
                    <title>isVar/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isVar(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">проверяемый объект (терм)</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли объект Obj свободной (пустой) переменной, вместо которой можно подставлять значение</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если объект является пустой переменной, fail в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isInt1">
                    <title>isInt/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isInt(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">объект у которого проверяется тип</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли объект Obj целым числом. Если да, то возвращается true, если нет - возникает возврат (fail)</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">В случае успеха, результатом является true</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isString1">
                    <title>isString/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isString(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">объект, у которого определяется тип</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли объект строкой</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если Obj является строкой, fail, если объект не является строкой</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isFloat1">
                    <title>isFloat/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isFloat(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">объект, у которого проверяется тип</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли аргумент строкой</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если аргумент - строка, fail в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isAtom1">
                    <title>isAtom/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isAtom(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">объект, у которого проверяется тип</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли объект атомом</imsmd:langstring>
                                </imsmd:FunDescr>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isTerm1">
                    <title>isTerm|1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isTerm(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">объект, у которого проверяется тип</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли аргумент структурой</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если аргумент - структура, fail в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isHash1">
                    <title>isHash/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isHash(Obj)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>Obj</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">проеряемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли аргумент Obj хэш-таблицей</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если аргумент - таблица, fail в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </imsmd:general>
                        </imsmd:lom>
                    </metadata>
                </item>
                <item identifier="isVector1">
                    <title>isVector/1</title>
                    <metadata>
                        <imsmd:lom xmlns:imsmd="http://www.imsglobal.org/xsd/imsmd_rootv1p2p1">
                            <imsmd:general>
                                <imsmd:function>isVector(V)</imsmd:function>
                                <imsmd:Arguments>
                                    <imsmd:Argument>V</imsmd:Argument>
                                    <imsmd:Type>Object</imsmd:Type>
                                    <imsmd:Desription>
                                        <imsmd:langstring xml:lang="ru">Проверяемый объект</imsmd:langstring>
                                    </imsmd:Desription>
                                </imsmd:Arguments>
                                <imsmd:ResultType>Boolean</imsmd:ResultType>
                                <imsmd:FunDescr>
                                    <imsmd:langstring xml:lang="ru">Проверяет, является ли аргумент V вектором</imsmd:langstring>
                                </imsmd:FunDescr>
                                <imsmd:Result>
                                    <imsmd:langstring xml:lang="ru">true, если вектор, неудача в противном случае</imsmd:langstring>
                                </imsmd:Result>
                            </