Configuration MS
Introduction
The location of service configuration file is provided by the servicesConfigURL User Setting, and defaults to servicesconfig.xml in the users's ChemAxon folder - located in user home as .chemaxon or ChemAxon, depending on operating system.
The file should be valid for the following XSD schema:
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
xs
:schema
elementFormDefault
=
"qualified"
xmlns:xs
=
"http://www.w3.org/2001/XMLSchema"
>
<!-- definition of attributes -->
<
xs
:attribute
name
=
"alias"
type
=
"xs:string"
/>
<
xs
:attribute
name
=
"name"
type
=
"xs:string"
/>
<
xs
:attribute
name
=
"class"
type
=
"xs:string"
/>
<
xs
:attribute
name
=
"url"
type
=
"xs:string"
/>
<
xs
:attribute
name
=
"method"
type
=
"xs:string"
/>
<
xs
:attribute
name
=
"descriptor"
type
=
"xs:string"
default
=
"chemaxon.marvin.services.descriptors.LocalServiceDescriptor"
/>
<
xs
:attribute
name
=
"value"
type
=
"xs:string"
/>
<
xs
:attribute
name
=
"expression"
type
=
"xs:string"
/>
<!-- definition of complex types -->
<
xs
:complexType
name
=
"evaluationType"
>
<
xs
:simpleContent>
<
xs
:extension
base
=
"xs:string"
>
<
xs
:attribute
ref
=
"class"
use
=
"optional"
default
=
"chemaxon.marvin.services.ChemicalTermsArgument"
/>
<
xs
:attribute
ref
=
"expression"
use
=
"optional"
/>
</
xs
:extension>
</
xs
:simpleContent>
</
xs
:complexType>
<
xs
:complexType
name
=
"argumentType"
>
<
xs
:all>
<
xs
:element
name
=
"Evaluate"
type
=
"evaluationType"
minOccurs
=
"0"
maxOccurs
=
"1"
/>
</
xs
:all>
<
xs
:attribute
name
=
"class"
use
=
"optional"
default
=
"java.lang.String"
>
<
xs
:simpleType>
<
xs
:restriction
base
=
"xs:string"
>
<
xs
:enumeration
value
=
"java.lang.Integer"
/>
<
xs
:enumeration
value
=
"java.lang.Float"
/>
<
xs
:enumeration
value
=
"java.lang.Double"
/>
<
xs
:enumeration
value
=
"java.lang.String"
/>
<
xs
:enumeration
value
=
"java.lang.Long"
/>
<
xs
:enumeration
value
=
"java.lang.Boolean"
/>
<
xs
:enumeration
value
=
"chemaxon.struc.Molecule"
/>
<
xs
:enumeration
value
=
"chemaxon.struc.MDocument"
/>
</
xs
:restriction>
</
xs
:simpleType>
</
xs
:attribute>
<
xs
:attribute
ref
=
"value"
use
=
"optional"
/>
<
xs
:attribute
ref
=
"name"
use
=
"optional"
default
=
"Unnamed"
/>
<
xs
:attribute
ref
=
"alias"
use
=
"optional"
/>
</
xs
:complexType>
<
xs
:complexType
name
=
"serviceType"
>
<
xs
:all>
<
xs
:element
name
=
"Arguments"
minOccurs
=
"0"
>
<
xs
:complexType>
<
xs
:sequence>
<
xs
:element
name
=
"Argument"
type
=
"argumentType"
maxOccurs
=
"unbounded"
/>
</
xs
:sequence>
</
xs
:complexType>
</
xs
:element>
</
xs
:all>
<
xs
:attribute
ref
=
"name"
use
=
"required"
/>
<
xs
:attribute
ref
=
"url"
use
=
"required"
/>
<
xs
:attribute
ref
=
"method"
use
=
"required"
/>
<
xs
:attribute
ref
=
"class"
use
=
"optional"
/>
<
xs
:attribute
ref
=
"descriptor"
use
=
"optional"
/>
<
xs
:attribute
ref
=
"alias"
use
=
"optional"
/>
<
xs
:anyAttribute
processContents
=
"skip"
/>
</
xs
:complexType>
<
xs
:element
name
=
"Services"
>
<
xs
:complexType>
<
xs
:sequence>
<
xs
:element
name
=
"Service"
type
=
"serviceType"
minOccurs
=
"0"
maxOccurs
=
"unbounded"
/>
</
xs
:sequence>
</
xs
:complexType>
</
xs
:element>
</
xs
:schema>