<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://services.nirvanix.com/ws/Metadata" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://services.nirvanix.com/ws/Metadata" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
  <wsdl:types>
    <s:schema elementFormDefault="qualified" targetNamespace="http://services.nirvanix.com/ws/Metadata">
      <s:element name="GetMetadata">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetMetadataResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetMetadataResult" type="tns:ArrayOfMetadataInfo" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfMetadataInfo">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="MetadataInfo" nillable="true" type="tns:MetadataInfo" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="MetadataInfo">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="Value" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="SetMetadata">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="metadata" type="tns:ArrayOfMetadataInfo" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SetMetadataResponse">
        <s:complexType />
      </s:element>
      <s:element name="DeleteMetadata">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="metadata" type="tns:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="ArrayOfString">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
        </s:sequence>
      </s:complexType>
      <s:element name="DeleteMetadataResponse">
        <s:complexType />
      </s:element>
      <s:element name="DeleteAllMetadata">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DeleteAllMetadataResponse">
        <s:complexType />
      </s:element>
      <s:element name="SetTags">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="tags" type="tns:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SetTagsResponse">
        <s:complexType />
      </s:element>
      <s:element name="GetTags">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="GetTagsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="GetTagsResult" type="tns:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DeleteTags">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="tags" type="tns:ArrayOfString" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DeleteTagsResponse">
        <s:complexType />
      </s:element>
      <s:element name="DeleteAllTags">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="path" type="s:string" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="DeleteAllTagsResponse">
        <s:complexType />
      </s:element>
      <s:element name="SearchMetadata">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="searchKey" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="searchTerm" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="maxResults" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SearchMetadataResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="SearchMetadataResult" type="tns:SearchResults" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:complexType name="SearchResults">
        <s:sequence>
          <s:element minOccurs="1" maxOccurs="1" name="SearchCount" type="s:int" />
          <s:element minOccurs="0" maxOccurs="1" name="Item" type="tns:ArrayOfSearchItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="ArrayOfSearchItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="unbounded" name="SearchItem" nillable="true" type="tns:SearchItem" />
        </s:sequence>
      </s:complexType>
      <s:complexType name="SearchItem">
        <s:sequence>
          <s:element minOccurs="0" maxOccurs="1" name="ItemPath" type="s:string" />
          <s:element minOccurs="0" maxOccurs="1" name="ItemName" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="CreatedDate" type="s:dateTime" />
          <s:element minOccurs="1" maxOccurs="1" name="SizeBytes" type="s:long" />
          <s:element minOccurs="0" maxOccurs="1" name="FileType" type="s:string" />
          <s:element minOccurs="1" maxOccurs="1" name="IsFile" type="s:boolean" />
        </s:sequence>
      </s:complexType>
      <s:element name="SearchTags">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="sessionToken" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="username" type="s:string" />
            <s:element minOccurs="0" maxOccurs="1" name="searchTerm" type="s:string" />
            <s:element minOccurs="1" maxOccurs="1" name="maxResults" type="s:int" />
          </s:sequence>
        </s:complexType>
      </s:element>
      <s:element name="SearchTagsResponse">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1" name="SearchTagsResult" type="tns:SearchResults" />
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
  </wsdl:types>
  <wsdl:message name="GetMetadataSoapIn">
    <wsdl:part name="parameters" element="tns:GetMetadata" />
  </wsdl:message>
  <wsdl:message name="GetMetadataSoapOut">
    <wsdl:part name="parameters" element="tns:GetMetadataResponse" />
  </wsdl:message>
  <wsdl:message name="SetMetadataSoapIn">
    <wsdl:part name="parameters" element="tns:SetMetadata" />
  </wsdl:message>
  <wsdl:message name="SetMetadataSoapOut">
    <wsdl:part name="parameters" element="tns:SetMetadataResponse" />
  </wsdl:message>
  <wsdl:message name="DeleteMetadataSoapIn">
    <wsdl:part name="parameters" element="tns:DeleteMetadata" />
  </wsdl:message>
  <wsdl:message name="DeleteMetadataSoapOut">
    <wsdl:part name="parameters" element="tns:DeleteMetadataResponse" />
  </wsdl:message>
  <wsdl:message name="DeleteAllMetadataSoapIn">
    <wsdl:part name="parameters" element="tns:DeleteAllMetadata" />
  </wsdl:message>
  <wsdl:message name="DeleteAllMetadataSoapOut">
    <wsdl:part name="parameters" element="tns:DeleteAllMetadataResponse" />
  </wsdl:message>
  <wsdl:message name="SetTagsSoapIn">
    <wsdl:part name="parameters" element="tns:SetTags" />
  </wsdl:message>
  <wsdl:message name="SetTagsSoapOut">
    <wsdl:part name="parameters" element="tns:SetTagsResponse" />
  </wsdl:message>
  <wsdl:message name="GetTagsSoapIn">
    <wsdl:part name="parameters" element="tns:GetTags" />
  </wsdl:message>
  <wsdl:message name="GetTagsSoapOut">
    <wsdl:part name="parameters" element="tns:GetTagsResponse" />
  </wsdl:message>
  <wsdl:message name="DeleteTagsSoapIn">
    <wsdl:part name="parameters" element="tns:DeleteTags" />
  </wsdl:message>
  <wsdl:message name="DeleteTagsSoapOut">
    <wsdl:part name="parameters" element="tns:DeleteTagsResponse" />
  </wsdl:message>
  <wsdl:message name="DeleteAllTagsSoapIn">
    <wsdl:part name="parameters" element="tns:DeleteAllTags" />
  </wsdl:message>
  <wsdl:message name="DeleteAllTagsSoapOut">
    <wsdl:part name="parameters" element="tns:DeleteAllTagsResponse" />
  </wsdl:message>
  <wsdl:message name="SearchMetadataSoapIn">
    <wsdl:part name="parameters" element="tns:SearchMetadata" />
  </wsdl:message>
  <wsdl:message name="SearchMetadataSoapOut">
    <wsdl:part name="parameters" element="tns:SearchMetadataResponse" />
  </wsdl:message>
  <wsdl:message name="SearchTagsSoapIn">
    <wsdl:part name="parameters" element="tns:SearchTags" />
  </wsdl:message>
  <wsdl:message name="SearchTagsSoapOut">
    <wsdl:part name="parameters" element="tns:SearchTagsResponse" />
  </wsdl:message>
  <wsdl:portType name="MetadataSoap">
    <wsdl:operation name="GetMetadata">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Retrieves the metadata for a given file or folder</wsdl:documentation>
      <wsdl:input message="tns:GetMetadataSoapIn" />
      <wsdl:output message="tns:GetMetadataSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="SetMetadata">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Sets the metadata for a given file or folder</wsdl:documentation>
      <wsdl:input message="tns:SetMetadataSoapIn" />
      <wsdl:output message="tns:SetMetadataSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DeleteMetadata">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Deletes the metadata for a given file or folder</wsdl:documentation>
      <wsdl:input message="tns:DeleteMetadataSoapIn" />
      <wsdl:output message="tns:DeleteMetadataSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DeleteAllMetadata">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Deletes all the metadata for a given file or folder</wsdl:documentation>
      <wsdl:input message="tns:DeleteAllMetadataSoapIn" />
      <wsdl:output message="tns:DeleteAllMetadataSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="SetTags">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Sets tags for a specific file or folder</wsdl:documentation>
      <wsdl:input message="tns:SetTagsSoapIn" />
      <wsdl:output message="tns:SetTagsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="GetTags">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Gets tags for a specific file or folder</wsdl:documentation>
      <wsdl:input message="tns:GetTagsSoapIn" />
      <wsdl:output message="tns:GetTagsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DeleteTags">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Deletes tags for a specific file or folder</wsdl:documentation>
      <wsdl:input message="tns:DeleteTagsSoapIn" />
      <wsdl:output message="tns:DeleteTagsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="DeleteAllTags">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Deletes all tags for a specific file or folder</wsdl:documentation>
      <wsdl:input message="tns:DeleteAllTagsSoapIn" />
      <wsdl:output message="tns:DeleteAllTagsSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="SearchMetadata">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Searchs for metadata in the file system.</wsdl:documentation>
      <wsdl:input message="tns:SearchMetadataSoapIn" />
      <wsdl:output message="tns:SearchMetadataSoapOut" />
    </wsdl:operation>
    <wsdl:operation name="SearchTags">
      <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Searchs for tags in the file system.</wsdl:documentation>
      <wsdl:input message="tns:SearchTagsSoapIn" />
      <wsdl:output message="tns:SearchTagsSoapOut" />
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="MetadataSoap" type="tns:MetadataSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetMetadata">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/GetMetadata" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SetMetadata">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/SetMetadata" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteMetadata">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteMetadata" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteAllMetadata">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteAllMetadata" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SetTags">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/SetTags" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetTags">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/GetTags" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteTags">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteTags" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteAllTags">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteAllTags" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SearchMetadata">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/SearchMetadata" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SearchTags">
      <soap:operation soapAction="http://services.nirvanix.com/ws/Metadata/SearchTags" style="document" />
      <wsdl:input>
        <soap:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="MetadataSoap12" type="tns:MetadataSoap">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="GetMetadata">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/GetMetadata" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SetMetadata">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/SetMetadata" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteMetadata">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteMetadata" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteAllMetadata">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteAllMetadata" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SetTags">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/SetTags" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="GetTags">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/GetTags" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteTags">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteTags" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="DeleteAllTags">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/DeleteAllTags" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SearchMetadata">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/SearchMetadata" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="SearchTags">
      <soap12:operation soapAction="http://services.nirvanix.com/ws/Metadata/SearchTags" style="document" />
      <wsdl:input>
        <soap12:body use="literal" />
      </wsdl:input>
      <wsdl:output>
        <soap12:body use="literal" />
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="Metadata">
    <wsdl:port name="MetadataSoap" binding="tns:MetadataSoap">
      <soap:address location="http://services.nirvanix.com/ws/Metadata.asmx" />
    </wsdl:port>
    <wsdl:port name="MetadataSoap12" binding="tns:MetadataSoap12">
      <soap12:address location="http://services.nirvanix.com/ws/Metadata.asmx" />
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>