version 1.149, 2002/03/20 13:50:27
|
version 1.150, 2002/03/21 16:18:02
|
Line 26
|
Line 26
|
/* Define a pointer to let parser functions access the Math entity table */ |
/* Define a pointer to let parser functions access the Math entity table */ |
extern XmlEntity *pMathEntityTable; |
extern XmlEntity *pMathEntityTable; |
|
|
/* mapping table of attribute values */ |
|
static AttrValueMapping MathMLAttrValueMappingTable[] = |
|
{ |
|
{MathML_ATTR_accent, "true", MathML_ATTR_accent_VAL_true}, |
|
{MathML_ATTR_accent, "false", MathML_ATTR_accent_VAL_false}, |
|
|
|
{MathML_ATTR_accentunder, "true", MathML_ATTR_accentunder_VAL_true}, |
|
{MathML_ATTR_accentunder, "false", MathML_ATTR_accentunder_VAL_false}, |
|
|
|
{MathML_ATTR_align, "top", MathML_ATTR_align_VAL_top_}, |
|
{MathML_ATTR_align, "bottom", MathML_ATTR_align_VAL_bottom_}, |
|
{MathML_ATTR_align, "center", MathML_ATTR_align_VAL_center}, |
|
{MathML_ATTR_align, "baseline", MathML_ATTR_align_VAL_baseline}, |
|
{MathML_ATTR_align, "axis", MathML_ATTR_align_VAL_axis}, |
|
|
|
{MathML_ATTR_bevelled, "true", MathML_ATTR_bevelled_VAL_true}, |
|
{MathML_ATTR_bevelled, "false", MathML_ATTR_bevelled_VAL_false}, |
|
|
|
{MathML_ATTR_columnalign_mtd, "center", MathML_ATTR_columnalign_mtd_VAL_center_}, |
|
{MathML_ATTR_columnalign_mtd, "left", MathML_ATTR_columnalign_mtd_VAL_left_}, |
|
{MathML_ATTR_columnalign_mtd, "right", MathML_ATTR_columnalign_mtd_VAL_right_}, |
|
|
|
{MathML_ATTR_denomalign, "center", MathML_ATTR_denomalign_VAL_center_}, |
|
{MathML_ATTR_denomalign, "left", MathML_ATTR_denomalign_VAL_left_}, |
|
{MathML_ATTR_denomalign, "right", MathML_ATTR_denomalign_VAL_right_}, |
|
|
|
{MathML_ATTR_display, "block", MathML_ATTR_display_VAL_block}, |
|
{MathML_ATTR_display, "display", MathML_ATTR_display_VAL_block}, |
|
{MathML_ATTR_display, "inline", MathML_ATTR_display_VAL_inline_}, |
|
|
|
{MathML_ATTR_displaystyle, "true", MathML_ATTR_displaystyle_VAL_true}, |
|
{MathML_ATTR_displaystyle, "false", MathML_ATTR_displaystyle_VAL_false}, |
|
|
|
{MathML_ATTR_edge, "left", MathML_ATTR_edge_VAL_left_}, |
|
{MathML_ATTR_edge, "right", MathML_ATTR_edge_VAL_right_}, |
|
|
|
{MathML_ATTR_equalcolumns, "true", MathML_ATTR_equalcolumns_VAL_true}, |
|
{MathML_ATTR_equalcolumns, "false", MathML_ATTR_equalcolumns_VAL_false}, |
|
|
|
{MathML_ATTR_equalrows, "true", MathML_ATTR_equalrows_VAL_true}, |
|
{MathML_ATTR_equalrows, "false", MathML_ATTR_equalrows_VAL_false}, |
|
|
|
{MathML_ATTR_fence, "true", MathML_ATTR_fence_VAL_true}, |
|
{MathML_ATTR_fence, "false", MathML_ATTR_fence_VAL_false}, |
|
|
|
{MathML_ATTR_fontstyle, "italic", MathML_ATTR_fontstyle_VAL_italic}, |
|
{MathML_ATTR_fontstyle, "normal", MathML_ATTR_fontstyle_VAL_normal_}, |
|
|
|
{MathML_ATTR_fontweight, "normal", MathML_ATTR_fontweight_VAL_normal_}, |
|
{MathML_ATTR_fontweight, "bold", MathML_ATTR_fontweight_VAL_bold_}, |
|
|
|
{MathML_ATTR_form, "prefix", MathML_ATTR_form_VAL_prefix}, |
|
{MathML_ATTR_form, "infix", MathML_ATTR_form_VAL_infix}, |
|
{MathML_ATTR_form, "postfix", MathML_ATTR_form_VAL_postfix}, |
|
|
|
{MathML_ATTR_frame, "none", MathML_ATTR_frame_VAL_none_}, |
|
{MathML_ATTR_frame, "solid", MathML_ATTR_frame_VAL_solid_}, |
|
{MathML_ATTR_frame, "dashed", MathML_ATTR_frame_VAL_dashed_}, |
|
|
|
{MathML_ATTR_groupalign_malgr, "left", MathML_ATTR_groupalign_malgr_VAL_left_}, |
|
{MathML_ATTR_groupalign_malgr, "center", MathML_ATTR_groupalign_malgr_VAL_center_}, |
|
{MathML_ATTR_groupalign_malgr, "right", MathML_ATTR_groupalign_malgr_VAL_right_}, |
|
{MathML_ATTR_groupalign_malgr, "decimalpoint", MathML_ATTR_groupalign_malgr_VAL_decimalpoint}, |
|
|
|
{MathML_ATTR_largeop, "true", MathML_ATTR_largeop_VAL_true}, |
|
{MathML_ATTR_largeop, "false", MathML_ATTR_largeop_VAL_false}, |
|
|
|
{MathML_ATTR_linebreak_, "auto", MathML_ATTR_linebreak__VAL_auto_}, |
|
{MathML_ATTR_linebreak_, "newline", MathML_ATTR_linebreak__VAL_newline}, |
|
{MathML_ATTR_linebreak_, "indentingnewline", MathML_ATTR_linebreak__VAL_indentingnewline}, |
|
{MathML_ATTR_linebreak_, "nobreak", MathML_ATTR_linebreak__VAL_nobreak_}, |
|
{MathML_ATTR_linebreak_, "goodbreak", MathML_ATTR_linebreak__VAL_goodbreak}, |
|
{MathML_ATTR_linebreak_, "badbreak", MathML_ATTR_linebreak__VAL_badbreak}, |
|
|
|
{MathML_ATTR_mathvariant, "normal", MathML_ATTR_mathvariant_VAL_normal_}, |
|
{MathML_ATTR_mathvariant, "bold", MathML_ATTR_mathvariant_VAL_bold_}, |
|
{MathML_ATTR_mathvariant, "italic", MathML_ATTR_mathvariant_VAL_italic}, |
|
{MathML_ATTR_mathvariant, "bold-italic", MathML_ATTR_mathvariant_VAL_bold_italic}, |
|
{MathML_ATTR_mathvariant, "double-struck", MathML_ATTR_mathvariant_VAL_double_struck}, |
|
{MathML_ATTR_mathvariant, "bold-fraktur", MathML_ATTR_mathvariant_VAL_bold_fraktur}, |
|
{MathML_ATTR_mathvariant, "script", MathML_ATTR_mathvariant_VAL_script_}, |
|
{MathML_ATTR_mathvariant, "bold-script", MathML_ATTR_mathvariant_VAL_bold_script}, |
|
{MathML_ATTR_mathvariant, "fraktur", MathML_ATTR_mathvariant_VAL_fraktur}, |
|
{MathML_ATTR_mathvariant, "sans-serif", MathML_ATTR_mathvariant_VAL_sans_serif}, |
|
{MathML_ATTR_mathvariant, "bold-sans-serif", MathML_ATTR_mathvariant_VAL_bold_sans_serif}, |
|
{MathML_ATTR_mathvariant, "sans-serif-italic", MathML_ATTR_mathvariant_VAL_sans_serif_italic}, |
|
{MathML_ATTR_mathvariant, "sans-serif-bold-italic", MathML_ATTR_mathvariant_VAL_sans_serif_bold_italic}, |
|
{MathML_ATTR_mathvariant, "monospace", MathML_ATTR_mathvariant_VAL_monospace}, |
|
|
|
{MathML_ATTR_movablelimits, "true", MathML_ATTR_movablelimits_VAL_true}, |
|
{MathML_ATTR_movablelimits, "false", MathML_ATTR_movablelimits_VAL_false}, |
|
|
|
{MathML_ATTR_notation, "longdiv", MathML_ATTR_notation_VAL_longdiv}, |
|
{MathML_ATTR_notation, "actuarial", MathML_ATTR_notation_VAL_actuarial}, |
|
{MathML_ATTR_notation, "radical", MathML_ATTR_notation_VAL_radical}, |
|
|
|
{MathML_ATTR_numalign, "center", MathML_ATTR_numalign_VAL_center_}, |
|
{MathML_ATTR_numalign, "left", MathML_ATTR_numalign_VAL_left_}, |
|
{MathML_ATTR_numalign, "right", MathML_ATTR_numalign_VAL_right_}, |
|
|
|
{MathML_ATTR_overflow, "scroll", MathML_ATTR_overflow_VAL_scroll}, |
|
{MathML_ATTR_overflow, "elide", MathML_ATTR_overflow_VAL_elide}, |
|
{MathML_ATTR_overflow, "truncate", MathML_ATTR_overflow_VAL_truncate}, |
|
{MathML_ATTR_overflow, "scale", MathML_ATTR_overflow_VAL_scale_}, |
|
|
|
{MathML_ATTR_rowalign_mtr, "top", MathML_ATTR_rowalign_mtr_VAL_top_}, |
|
{MathML_ATTR_rowalign_mtr, "bottom", MathML_ATTR_rowalign_mtr_VAL_bottom_}, |
|
{MathML_ATTR_rowalign_mtr, "center", MathML_ATTR_rowalign_mtr_VAL_center}, |
|
{MathML_ATTR_rowalign_mtr, "baseline", MathML_ATTR_rowalign_mtr_VAL_baseline}, |
|
{MathML_ATTR_rowalign_mtr, "axis", MathML_ATTR_rowalign_mtr_VAL_axis}, |
|
|
|
{MathML_ATTR_separator, "true", MathML_ATTR_separator_VAL_true}, |
|
{MathML_ATTR_separator, "false", MathML_ATTR_separator_VAL_false}, |
|
|
|
{MathML_ATTR_side, "left", MathML_ATTR_side_VAL_left_}, |
|
{MathML_ATTR_side, "leftoverlap", MathML_ATTR_side_VAL_leftoverlap}, |
|
{MathML_ATTR_side, "right", MathML_ATTR_side_VAL_right_}, |
|
{MathML_ATTR_side, "rightoverlap", MathML_ATTR_side_VAL_rightoverlap}, |
|
|
|
{MathML_ATTR_stretchy, "true", MathML_ATTR_stretchy_VAL_true}, |
|
{MathML_ATTR_stretchy, "false", MathML_ATTR_stretchy_VAL_false}, |
|
|
|
{MathML_ATTR_symmetric, "true", MathML_ATTR_symmetric_VAL_true}, |
|
{MathML_ATTR_symmetric, "false", MathML_ATTR_symmetric_VAL_false}, |
|
|
|
{MathML_ATTR_xml_space, "default", MathML_ATTR_xml_space_VAL_xml_space_default}, |
|
{MathML_ATTR_xml_space, "preserve", MathML_ATTR_xml_space_VAL_xml_space_preserve}, |
|
|
|
{0, "", 0} /* Last entry. Mandatory */ |
|
}; |
|
|
|
#define MaxMsgLength 200 |
#define MaxMsgLength 200 |
|
|
#include "HTMLtable_f.h" |
#include "HTMLtable_f.h" |
Line 181 void MapMathMLAttribute (char *attrName,
|
Line 50 void MapMathMLAttribute (char *attrName,
|
Search in the Attribute Value Mapping Table the entry for the attribute |
Search in the Attribute Value Mapping Table the entry for the attribute |
ThotAtt and its value AttrVal. Returns the corresponding Thot value. |
ThotAtt and its value AttrVal. Returns the corresponding Thot value. |
----------------------------------------------------------------------*/ |
----------------------------------------------------------------------*/ |
void MapMathMLAttributeValue (char *AttrVal, AttributeType attrType, |
void MapMathMLAttributeValue (char *attVal, AttributeType attrType, int *value) |
int *value) |
|
{ |
{ |
int i; |
MapXMLAttributeValue (MATH_TYPE, attVal, attrType, value); |
|
|
*value = 0; |
|
i = 0; |
|
while (MathMLAttrValueMappingTable[i].ThotAttr != attrType.AttrTypeNum && |
|
MathMLAttrValueMappingTable[i].ThotAttr != 0) |
|
i++; |
|
if (MathMLAttrValueMappingTable[i].ThotAttr == attrType.AttrTypeNum) |
|
do |
|
if (!strcmp (MathMLAttrValueMappingTable[i].XMLattrValue, AttrVal)) |
|
*value = MathMLAttrValueMappingTable[i].ThotAttrValue; |
|
else |
|
i++; |
|
while (*value == 0 && |
|
MathMLAttrValueMappingTable[i].ThotAttr == attrType.AttrTypeNum); |
|
} |
} |
|
|
/*---------------------------------------------------------------------- |
/*---------------------------------------------------------------------- |