<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xs:element name="FeatureSource" type="FeatureSourceType"> <xs:annotation> <xs:documentation>Describes the information needed to connect to a feature source</xs:documentation> </xs:annotation> </xs:element> <xs:complexType name="FeatureSourceType"> <xs:sequence> <xs:element name="Provider" type="xs:string"> <xs:annotation> <xs:documentation>Name of provider</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Parameter" type="NameValuePairType" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Collection of name value pairs for connecting to a data source</xs:documentation> </xs:annotation> </xs:element> <xs:element name="SupplementalSpatialContextInfo" type="SpatialContextType" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Additional information for a spatial context when the coordinate system is missing from the feature source</xs:documentation> </xs:annotation> </xs:element> <xs:element name="ConfigurationDocument" type="xs:string" minOccurs="0"> <xs:annotation> <xs:documentation>Configuration information needed for certain providers</xs:documentation> </xs:annotation> </xs:element> <xs:element name="LongTransaction" type="xs:string" minOccurs="0"> <xs:annotation> <xs:documentation>The long transaction to use when connected to the provider</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Extension" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>A set of extensions for the data source information</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element name="CalculatedProperty" type="CalculatedPropertyType" minOccurs="0" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Zero or more calculated properties from attributes from the same feature class</xs:documentation> </xs:annotation> </xs:element> <xs:element name="AttributeRelate" type="AttributeRelateType" maxOccurs="unbounded"/> <xs:element name="Name" type="xs:string"> <xs:annotation> <xs:documentation>Name of the extension</xs:documentation> </xs:annotation> </xs:element> <xs:element name="FeatureClass" type="xs:string"> <xs:annotation> <xs:documentation>The feature class that is being extended; this is the class whose attributes are used for joining other attribute classes</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> <xs:attribute name="version" type="xs:string"> <xs:annotation> <xs:documentation>Version number of this schema</xs:documentation> </xs:annotation> </xs:attribute> </xs:complexType> <xs:complexType name="NameValuePairType"> <xs:annotation> <xs:documentation>A type describing name and value pairs</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="Name" type="xs:string"> <xs:annotation> <xs:documentation>Text for the name of parameter</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Value" type="xs:string"> <xs:annotation> <xs:documentation>Text for value of parameter</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="ExtensionsType"> <xs:annotation> <xs:documentation>A type describing extensions to a data source</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="FeatureClass"/> </xs:sequence> </xs:complexType> <xs:complexType name="CalculatedPropertyType"> <xs:sequence> <xs:element name="Name" type="xs:string"> <xs:annotation> <xs:documentation>Name of property</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Expression" type="xs:string"> <xs:annotation> <xs:documentation>Expression for the property</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="RelatePropertyType"> <xs:sequence> <xs:element name="FeatureClassProperty" type="xs:string"> <xs:annotation> <xs:documentation>Name of property (field) in feature class </xs:documentation> </xs:annotation> </xs:element> <xs:element name="AttributeClassProperty" type="xs:string"> <xs:annotation> <xs:documentation>Name of property (field) in attribute class</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="AttributeRelateType"> <xs:sequence> <xs:element name="RelateProperty" type="RelatePropertyType" maxOccurs="unbounded"> <xs:annotation> <xs:documentation>Array of pairs of feature class properties (fields) and attribute class properties (fields) that define a join</xs:documentation> </xs:annotation> </xs:element> <xs:element name="AttributeClass" type="xs:string"> <xs:annotation> <xs:documentation>Name of class the feature class is joined to</xs:documentation> </xs:annotation> </xs:element> <xs:element name="ResourceId" type="xs:string"> <xs:annotation> <xs:documentation>Identifies the resource id of the attribute class</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Name" type="xs:string"> <xs:annotation> <xs:documentation>Name of the relationship that defines a join</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:complexType name="SpatialContextType"> <xs:annotation> <xs:documentation>A type describing spatial context for this feature source</xs:documentation> </xs:annotation> <xs:sequence> <xs:element name="Name" type="xs:string"> <xs:annotation> <xs:documentation>Name of the spatial context</xs:documentation> </xs:annotation> </xs:element> <xs:element name="CoordinateSystem" type="xs:string"> <xs:annotation> <xs:documentation>Coordinate system used for this spatial context</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> </xs:schema>