Manage Marvin services

    Configure services in MarvinSketch preferences with provided graphical user interface. The preferences tab offers all available service implementation with editor support. For custom service implementations or alternative editors, user-defined mapping can be used by placing a file named servicedescriptoreditormapping.xml to the user's ChemAxon directory - usually located in user home as .chemaxon or ChemAxon, depending on operating system. The file should be valid to the following XSD schema:

    
    <?xml version="1.0" encoding="utf-8"?>
        <xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
        <xs:attribute name="class" type="xs:string" />
        <xs:attribute name="editor" type="xs:string" />
        <xs:complexType name="descriptorType">
          <xs:attribute ref="class" />
          <xs:attribute ref="editor" />
        </xs:complexType>
        <xs:element name="DescriptorEditorMapping">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Descriptor" type="descriptorType" minOccurs="0" maxOccurs="unbounded" />
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        </xs:schema>

    The code attribute is the class name of the ServiceDescriptor implementation, and the editor attribute is the class name of the ServiceDescriptorEditor implementation.

    Services saved by MarvinSketch are available by their names in cxcalc and as Chemical Terms function. Arguments also can be referred by their names set at the editor. Please note that the built-in editor has type restrictions that can be avoided by direct access of the Marvin Services API. The most important types such as MDocument, Molecule, String, Integer, Long, Double, Float and Boolean are available.