ExpressionML (.xml)

Background & Context

    • MIME type: text/xmlWolfram Language ExpressionML format.
    • Represents an arbitrary Wolfram Language expression as XML.
    • Used for the exchange of general expressions between the Wolfram System and other applications.
    • Plain text file, normally encoded as UTF-8.
    • Developed in 2002 by Wolfram Research.

Import & Export

  • Import["file.xml"] imports an ExpressionML file and returns an expression.
  • Export["file.xml",expr,"ExpressionML"] exports an arbitrary expression to XML.
  • Import["file.xml"] reads an XML file that holds ExpressionML data and converts it to the corresponding Wolfram Language expression.
  • When reading XML, Import automatically recognizes the ExpressionML format. Generic XML content will be imported as an XMLObject expression.
  • Export["file.xml",expr,"ExpressionML"] converts an arbitrary Wolfram Language expression to the corresponding ExpressionML data structure and writes it to an XML file.
  • Export["file.xml",XMLObject[]] converts a symbolic XML expression to generic XML.
  • Import["file.xml",elem] imports the specified element from an ExpressionML file.
  • Import["file.xml",{{elem1,elem2,}}] imports multiple elements.
  • The import format can be specified with Import["file","ExpressionML"] or Import["file",{"ExpressionML",elem,}].
  • Export["file.xml",expr,elem] creates an ExpressionML file by treating expr as specifying element elem.
  • Export["file.xml",{expr1,expr2,},{{elem1,elem2,}}] treats each expri as specifying the corresponding elemi.
  • Export["file.xml",expr,opt1->val1,] exports expr with the specified option elements taken to have the specified values.
  • Export["file.xml",{elem1->expr1,elem2->expr2,},"Rules"] uses rules to specify the elements to be exported.
  • The export format can be explicitly specified in the form Export["file",expr,"ExpressionML"] or Export["file",expr,{"ExpressionML",elems}].
  • See the following reference pages for full general information:
  • Import, Exportimport from or export to a file
    CloudImport, CloudExportimport from or export to a cloud object
    ImportString, ExportStringimport from or export to a string
    ImportByteArray, ExportByteArrayimport from or export to a byte array

Import Elements

  • General Import elements:
  • "Elements" list of elements and options available in this file
    "Summary"summary of the file
    "Rules"list of rules for all available elements
  • Data representation elements:
  • "Boxes"ExpressionML typeset as a Wolfram Language box expression
    "Expression"arbitrary Wolfram Language expression
    "HeldExpression"unevaluated expression
    "XMLObject"ExpressionML as a symbolic XML expression
    "XMLElement"nested XMLElement objects
  • Import and Export use the "Expression" element by default.


Basic Examples  (1)

Convert a mathematical expression to the ExpressionML format:

Import automatically recognizes the ExpressionML format when reading XML data:

Show the available Import elements:

Convert ExpressionML to an evaluated expression:

Import without evaluating:

Convert ExpressionML to a Wolfram Language typesetting expression:

Import ExpressionML to a complete symbolic XML expression:

Import ExpressionML to a symbolic XML fragment: