<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE module-description PUBLIC "-//StarOffice//DTD ComponentDescription 1.0//EN" "module-description.dtd">
<!--***********************************************************
 *
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 *
 ***********************************************************-->


<module-description xmlns:xlink="http://www.w3.org/1999/xlink">
    <module-name>sc</module-name>
  <!-- XML-based filter: Calc import components
       (full, styles, content, meta, settings)
    -->
  <component-description>
    <author>xmloff development team</author>
    <name>com.sun.star.comp.Calc.XMLImporter</name>
    <description>
      This component imports a single XML document stream into a
      calc document.
    </description>
    <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
    <language>c++</language>
    <status value="beta"/>
    <supported-service>com.sun.star.xml.XMLImportFilter</supported-service>
    <reference-docu xlink:href="http://xml.openoffice.org/"
        xlink:title="general OpenOffice.org XML information" />
    <reference-docu xlink:title="XML File Format Specification (draft)"
        xlink:href="http://xml.openoffice.org/xml_specification_draft.pdf" />
    <reference-docu xlink:href="http://xml.openoffice.org/filter/"
        xlink:title="Guide to implement XML-based filters in Apache OpenOffice" />
  </component-description>

  <component-description>
    <author>xmloff development team</author>
    <name>com.sun.star.comp.Calc.XMLStylesImporter</name>
    <description>
      This component imports the styles.xml stream into a calc document.
    </description>
    <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
    <language>c++</language>
    <status value="beta"/>
    <supported-service>com.sun.star.xml.XMLImportFilter</supported-service>
    <reference-docu xlink:href="http://xml.openoffice.org/"
        xlink:title="general OpenOffice.org XML information" />
    <reference-docu xlink:title="XML File Format Specification (draft)"
        xlink:href="http://xml.openoffice.org/xml_specification_draft.pdf" />
    <reference-docu xlink:href="http://xml.openoffice.org/filter/"
        xlink:title="Guide to implement XML-based filters in Apache OpenOffice" />
  </component-description>

  <component-description>
    <author>xmloff development team</author>
    <name>com.sun.star.comp.Calc.XMLContentImporter</name>
    <description>
      This component imports the content.xml stream into a calc document.
    </description>
    <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
    <language>c++</language>
    <status value="beta"/>
    <supported-service>com.sun.star.xml.XMLImportFilter</supported-service>
    <reference-docu xlink:href="http://xml.openoffice.org/"
        xlink:title="general OpenOffice.org XML information" />
    <reference-docu xlink:title="XML File Format Specification (draft)"
        xlink:href="http://xml.openoffice.org/xml_specification_draft.pdf" />
    <reference-docu xlink:href="http://xml.openoffice.org/filter/"
        xlink:title="Guide to implement XML-based filters in Apache OpenOffice" />
  </component-description>

  <component-description>
    <author>xmloff development team</author>
    <name>com.sun.star.comp.Calc.XMLMetaImporter</name>
    <description>
      This component imports the meta.xml stream into a calc document.
    </description>
    <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
    <language>c++</language>
    <status value="beta"/>
    <supported-service>com.sun.star.xml.XMLImportFilter</supported-service>
    <reference-docu xlink:href="http://xml.openoffice.org/"
        xlink:title="general OpenOffice.org XML information" />
    <reference-docu xlink:title="XML File Format Specification (draft)"
        xlink:href="http://xml.openoffice.org/xml_specification_draft.pdf" />
    <reference-docu xlink:href="http://xml.openoffice.org/filter/"
        xlink:title="Guide to implement XML-based filters in Apache OpenOffice" />
  </component-description>

  <component-description>
    <author>xmloff development team</author>
    <name>com.sun.star.comp.Calc.XMLSettingsImporter</name>
    <description>
      This component imports the settings.xml stream into a calc document.
    </description>
    <loader-name>com.sun.star.loader.SharedLibrary</loader-name>
    <language>c++</language>
    <status value="beta"/>
    <supported-service>com.sun.star.xml.XMLImportFilter</supported-service>
    <reference-docu xlink:href="http://xml.openoffice.org/"
        xlink:title="general OpenOffice.org XML information" />
    <reference-docu xlink:title="XML File Format Specification (draft)"
        xlink:href="http://xml.openoffice.org/xml_specification_draft.pdf" />
    <reference-docu xlink:href="http://xml.openoffice.org/filter/"
        xlink:title="Guide to implement XML-based filters in Apache OpenOffice" />
  </component-description>
  <project-build-dependency>cppu</project-build-dependency>
  <project-build-dependency>cppuhelper</project-build-dependency>
  <project-build-dependency>goodies</project-build-dependency>
  <project-build-dependency>osl</project-build-dependency>
  <project-build-dependency>rsc</project-build-dependency>
  <project-build-dependency>rtl</project-build-dependency>
  <project-build-dependency>sal</project-build-dependency>
  <project-build-dependency>sfx2</project-build-dependency>
  <project-build-dependency>sot</project-build-dependency>
  <project-build-dependency>stl</project-build-dependency>
  <project-build-dependency>svtools</project-build-dependency>
  <project-build-dependency>svx</project-build-dependency>
  <project-build-dependency>tools</project-build-dependency>
  <project-build-dependency>typelib</project-build-dependency>
  <project-build-dependency>uno</project-build-dependency>
  <project-build-dependency>unotools</project-build-dependency>
  <project-build-dependency>vcl</project-build-dependency>
  <project-build-dependency>vos</project-build-dependency>
</module-description>
