XMLTools
ProcessAttributes
process the attributes of an XML element
Calling Sequence
Parameters
Description
Examples
ProcessAttributes(xmlTree, Allowable, Values, Options)
xmlTree
-
Maple XML tree; XML element
Allowable
set of strings; attribute names that are valid for xmlTree
Values
table; on exit, contains an entry for each attribute value indexed by the attribute name
Options
(optional) equations of the form option_name = option_value; error-checking options
The ProcessAttributes(xmlTree, Allowable, Values, Options) command processes the attributes of xmlTree by assigning any attribute values to Values (a table created by ProcessAttributes and indexed by the attribute names). The Allowable argument is a set of those attribute names, which are valid for xmlTree.
ProcessAttributes can also perform rudimentary error checking when Options are included in the calling sequence. These Options specify whether to return an error or ignore any problems in the attributes.
The following options are permitted in the calling sequence.
required =set of strings
Specifies a set of strings, which must be a subset of the set Allowable. If an attribute in this set does not have an assigned value, an exception occurs.
name =symbol
Checks that xmlTree has the given name. The name must not have the _XML_ prefix.
error_addendum =string
The string specified by this option is appended to any error messages that are generated.
validate =truefalse
Specifies whether an error is returned if there is a ever a problem with an attribute (that is, either xmlTree contains an attribute which is not expected or it does not have a value for a required attribute).
The default setting for this option is false. Therefore, if this option is not specified or if validate = false is included in the calling sequence, then an error is not returned if a problem with an attribute occurs. Otherwise, if this option is specified as true, an error is returned when a problem with an attribute occurs.
Note: This does not mean that errors in arguments to ProcessAttributes are ignored. For example, if the required option has an attribute name that is not contained in the set Allowable, an exception still occurs.
defaults =equation or set of equations
Specifies the default attribute value for any attribute. Each equation must take the form attrName=attrValue, where attrName and attrValue are both strings. All left-hand sides of the equations must be members of the set Allowable.
with⁡XMLTools:
xml≔ParseString⁡<set id='0203'><cn type='integer'>3</cn><ci>a</ci><cn type='rational'>5<sep/>3</cn></set>:
MyContent≔ProcessAttributes⁡xml,class,id,other,style,xref,definitionURL,encoding,AttributeValues,name=set,error_addendum=MathML 2.0 4.4.6.1
MyContent≔_XML_Element⁡_XML_ElementType⁡cn,_XML_Attribute⁡_XML_AttrName⁡type,_XML_AttrValue⁡integer,_XML_Text⁡3,_XML_Element⁡_XML_ElementType⁡ci,,_XML_Text⁡a,_XML_Element⁡_XML_ElementType⁡cn,_XML_Attribute⁡_XML_AttrName⁡type,_XML_AttrValue⁡rational,_XML_Text⁡5,_XML_Element⁡_XML_ElementType⁡sep,,,_XML_Text⁡3
AttributeValuesid
0203
See Also
XMLTools[Attributes]
XMLTools[ParseString]
XMLTools[ToString]
Download Help Document