<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Automated Information Extraction from Sources: a Survey Web</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Giacomo Fiumara</string-name>
          <email>giacomo.fiumara@unime.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Fisica, Universit`a degli Studi di Messina</institution>
          ,
          <addr-line>Salita Sperone 31, I-98166 Messina</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The Web contains an enormous quantity of information which is usually formatted for human users. This makes it difficult to extract relevant content from various sources. In the last few years some authors have addressed the problem to convert Web documents from unstructured or semi-structured format into structured and therefore machine-understandable format such as, for example, XML. In this paper we briefly survey some of the most promising and recently developed extraction tools.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Although XML can be regarded as a lingua franca of the Web, nowadays
almost all information available in Web sites is coded in form of HTML
documents. This situation in unlikely to change in short or even medium term
for at least two reasons: the simplicity and power of HTML authoring tools,
together with a valuable inertia to change markup language. From the point
of view of anyone interested in extracting information from Web sites, on
the opposite, the difference between HTML and XML is evident. Although
they are both derived from SGML, HTML was designed as a
presentationoriented language. On the contrary, XML has among its points of strength the
separation between data and its human-oriented presentation, which allows
data-centered applications to better handle large amounts of data. Another
fundamental advantage of XML is the availability of powerful instruments
for querying XML documents, namely XQuery/XPath[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], together with the
increasing availability of native XML Databases [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], see for example eXist[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
and Monet[
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Whereas [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] has surveyed the tools for information extraction
in the Semantic Web, this survey would like to examine the state of the art
of tools addressing the traditional Web. Even though the taxonomy proposed
in [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] is largely adopted here, the emphasis is on what can be done in the
context of existing, legacy Web sites. Community Web sites that have been
serving their users for long time are a particular case in point. This brief
survey will focus in Section 2 on the main questions regarding wrappers and
their automatic generation and then give an overview of systems in Section
3. Related work will be presented in Section 4. Conclusions and future work
will be presented in Section 5.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2 Wrapping a Web page</title>
      <p>
        Information extraction from Web sites is often performed using wrappers.
A wrapper is a procedure that is designed to access HTML documents and
export the relevant text to a structured format, normally XML. Wrappers
consist of a series of rules and some code to apply those rules and,
generally speaking, are specific to a source. According to [
        <xref ref-type="bibr" rid="ref16 ref6">6, 16</xref>
        ] a classification of
Web wrappers can be made on the base of the kind of HTML pages that
each wrapper is able to deal with. Three different types of Web pages can be
distinguished:
• unstructured pages: also called free-text documents, unstructured pages
are written in natural language. No structure can be found, and only
information extraction (IE) techniques can be applied with a certain degree
of confidence.
• structured pages: are normally obtained from a structured data source, e.g.
a database, and data are published together with information on structure.
The extraction of information is accomplished using simple techniques
based on syntactic matching.
• semi-structured pages: are in an intermediate position between
unstructured and structured pages, in that they do not conform to a description
for the types of data published therein. These documents possess anyway
a kind of structure, and extraction techniques are often based on the
presence of special patterns, as HTML tags. The information that may be
extracted from these documents is rather limited.
      </p>
      <p>Besides the HTML page structure, effective wrappers consider also the
structure of hyperlink as it may reveal relevant information. Depending on
the type of Web search engine the following kinds of results can be obtained:
• one-level one-page result: one page contains all the item descriptions;
• one-level multi-pages: a series of pages linked one to another, all containing
the item description;
• two-level pages: a chain of pages, each containing a shortened description
of items, each linking to a detailed page.</p>
    </sec>
    <sec id="sec-3">
      <title>3 Information Extraction Tools</title>
      <p>
        In this section a brief overview of some information extraction tools will be
given. The idea is to illustrate the main features of tools belonging to the
family of the so-called HTML aware tools (see [
        <xref ref-type="bibr" rid="ref15 ref16 ref6">16, 15, 6</xref>
        ] for the related
taxonomy). Among the large number of information extraction tools we chose Lixto
and Fetch as examples of powerful yet commercial semi-supervised wrapper
generators, while RoadRunner is a prototype of fully automatic tools. Finally
Dynamo will be described as an example of extraction tools which rely on the
cooperation between the webmasters of the Web sites which publish
information and the user willing to automate the extraction process.
      </p>
      <sec id="sec-3-1">
        <title>3.1 LiXto</title>
        <p>
          The LiXto project was started by Gottlob et al. at TUWIEN and is now
developed and sold by the LiXto GMbh software house. LiXto [
          <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
          ] is a
method for visually extracting HTML/XML wrappers under the supervision
of a human designer. LiXto allows a wrapper to interactively and visually
define information extraction patterns on the base of visualized sample Web
pages. These extraction patterns are collected into a hierarchical knowledge
base that constitutes a declarative wrapper program. The extraction
knowledge is internally represented in a Datalog-like programming language called
Elog [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. The typical user is not concerned with Elog as wrappers are build
using visual and interactive primitives. Wrapper programs can be run over
input Web documents by a module in charge of extraction which then
translates the output in XML. The latter is done thanks to a XML translation
scheme with the possibility to construct a Document Type Definition (DTD)
which describes the characteristics of the output XML documents. Among the
most interesting features is the ability to access Web data even if protected by
means of a username/password authentication mechanism, if the user provides
them. LiXto has also the possibility to follow links thus collecting information
even if spread across several Web pages, the flexibility to output extracted
structured information into several formats, namely XML, SQL records and
XHTML newly produced Web pages. Finally, the extraction process can be
scheduled in order to be repeated at fixed times.
        </p>
      </sec>
      <sec id="sec-3-2">
        <title>3.2 Fetch Agent Platform</title>
        <p>Fetch Agent Platform [21] is another example of commercial information
extraction tool.It is based on two major components, the AgentBuilder which
provides a visual environment that allows a user to construct web agents, and
the AgentRunner which automatically performs the tasks specified by the
agent, and produces structured data. The framework also provides a tool able
to monitor Web target pages, specifying which data fields are to be checked.
The extraction rules are based on landmarks (groups of consecutive tokens)
that enable a software agent to locate the start and end of fields within a page.
The extraction algorithm that learns these landmarks based on examples
labeled by the user and uses the hierarchical structure of the page to constrain
the learning problem.</p>
      </sec>
      <sec id="sec-3-3">
        <title>3.3 RoadRunner</title>
        <p>
          RoadRunner [
          <xref ref-type="bibr" rid="ref10 ref11 ref12 ref13 ref14">10, 11, 12, 13, 14</xref>
          ] was developed at the University of Roma 3
and applies to intensive Web sites, i.e. those sites with large amounts of data
and a rather regular structure. RoadRunner works by comparing the HTML
structure of a set of sample pages of the same type, and generates a schema
for the data contained in the pages. This schema is used as a starting point
for the inference of a grammar which is capable to recognize the instances of
attributes identified for this schema in the set of sample pages. The extraction
procedure is based on an algorithm that compares the tag structure of the set
of sample pages and produces regular expressions able to handle structural
differences found in the set of sample pages. A peculiar feature of RoadRunner
is that this procedure is completely automatic and no user intervention is
required.
        </p>
      </sec>
      <sec id="sec-3-4">
        <title>3.4 Dynamo</title>
        <p>
          The Dynamo Project [
          <xref ref-type="bibr" rid="ref18 ref19">18, 19</xref>
          ] addresses data extraction and channeling over
legacy Web sites in plain HTML. Dynamo is intended to benefit two types of
users. First, webmasters may employ it to manage the creation of RSS feeds,
thus avoiding to do it by hand or by means of proprietary software. Second,
users, i.e., consumers of feeds, may use it to overcome limitations such as i)
old feeds may not be consulted and usually are deleted from servers and ii)
traditional HTML servers cannot execute advanced queries directly. On the
contrary, with Dynamo it becomes possible to:
•
automatically and dynamically generate RSS feeds starting from HTML
Web pages;
• store feeds in chronological order;
• query and aggregate them thanks to Web Services (WS) acting as agents.
It is important to stress that these results were obtained with a lightweight pull
algorithm for retrieving HTML documents by Web servers, thus minimizing
the required Web traffic for the updates of news sources [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ].
        </p>
        <p>HTML documents contain a mixture of information to be published, i.e.,
meaningful to humans, and of directives, in the form of tags, that are
meaningful to the browsers and determine the appearance on the screen. Moreover,
since the HTML format is designed for visualization purposes only, its tags
do not allow sophisticated machine processing of the information contained
therein.</p>
        <p>Among other things, one factor that may prevent the spread of the
Semantic Web is the complexity of extracting, from existing, heterogeneous HTML
documents machine-readable information. Although the Dynamo project
addresses only a fraction of the Semantic Web vision, management of HTML
documents needs some technique to locate and extract some valuable and
meaningful content. Therefore, a set of annotations, in form of meta-tags, were
defined; they are inserted inside HTML in order to highlight informational
content that is essential for the creation of a RSS feed. In this application,
meta-tags are used as annotations, to describe and mark all interesting
information, in order to help in the extraction and so-called XML-ization phases.
Notice that with pages that are dynamically generated out of some template
(which is the case with practically all on-line fora) Dynamo annotation is
done, manually but only once and for all, over the page template.</p>
        <p>Once HTML documents are processed by Dynamo, annotated semantic
structures are extracted and organized into a simple XML format to be stored
and used as a starting point for document querying and transformation. The
structure of the XML output resembles the structure of meta-tags previously
defined and the RSS XML structure, in order to facilitate transformations
from the former to the latter. At the moment, a version of Dynamo is
undergoing a phase of testing in several forum of the Milan Community Network
(Rete Civica Milanese).
In the past few years, many approaches to the problem of Information
Extraction (IE) by means of Wrapper Induction (WI) systems have been tackled.
Previously proposed taxonomies will be briefly examined in this section. Hsu
and Dung [22] classified wrappers into 4 categories:
•
•
•
•
hand-made wrappers using general-purpose programming languages;
designed programming languages;
heuristic-based wrappers;
WI approaches.</p>
        <p>
          A complete categorization was made by Laender et al. [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ]. They proposed
the following taxonomy:
• languages for wrapper development;
• HTML-aware tools;
• NLP-based tools;
• wrapper induction tools;
• modeling-based tools, and
• ontology-based tools.
        </p>
        <p>They also compared among the tools using these features: degree of
automation, support for complex objects, page contents, availability of a GUI, XML
output, support for non-HTML sources, resilience and adaptiveness.</p>
        <p>Sarawagi [24] classified Web sites wrappers according to the amplitude
of the tasks they are able to face. So he distinguishes record-level wrappers,
capable to extract elements of a single list from a Web page, page-level
wrappers which extract elements of multiple records and, finally, site-level wrappers
which can extract and convert into structured format an entire Web site.</p>
        <p>
          More recently, Chang et al. [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ] proposed a three-dimensional
representation of IE features: the first dimension evaluates the difficulty of an IE task,
the second compares the various techniques and the third dimension compares
both the training effort of a user and the necessity to port an IE system across
different domains.
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>5 Conclusions and future work</title>
      <p>In this paper we presented a short survey of most recent tools for the
extraction of information from Web sites. All the tools presented here automatically
generate wrappers in order to accomplish their task and all of them provide
output data in XML format, thus focusing on the meaning of data rather than
on their graphical representation.</p>
      <p>There are a series of current and future applications where information
extraction tools can fully exploit their power. One of the most promising
seem to be the comparison of items, for example in commercial aggregators.
The possibility for a user to compare different offerings of the same object is
a feature currently not supported by online auction sites.</p>
      <p>Even in the area of communication, the possibility of aggregating and
querying information automatically extracted from different Web news sites
seems really promising, specially in conjunction with the features offered by
XML-based query engines. This, together with more flexible and powerful
extraction tools will certainly help paving the road to the semantic web.
20. De Cindio F., Fiumara G., Marchi M., Provetti A., Ripamonti L.A. and
Sonnante L. (2006) Aggregating information and enforcing awareness across
communities with the Dynamo RSS feeds creation engine: preliminary report. OTM
Workshops (1) 2006: 227-236
21. Fetch Technologies, available from http://www.fetch.com
22. Hsu C.-N. and Dung M. (1998) Generating finite-state transducers for
semistructured data extraction from the web. Journal of Information Systems 23(8):
521-538 (1998)
23. Chang C-H., Hsu C.-N. and Lui, S.-C. (2003) Automatic information extraction
from semi-structured web pages by pattern discovery. Decision Support Systems
Journal, 35(1): 129-147 (2003)
24. Sarawagi S. (2002) Automation in information extraction and integration,
Tutorial of VLDB (2002)</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bourret</surname>
            <given-names>RP</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>XML and Databases</article-title>
          . http://rpbourret.com
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>W3C</surname>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>XQuery 1.0</article-title>
          . http://w3c.org/TR/xquery
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>eXist</surname>
          </string-name>
          (
          <year>2007</year>
          )
          <article-title>Open Source XML Native Database</article-title>
          . http://exist-db.org
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>MonetDB</surname>
          </string-name>
          (
          <year>2007</year>
          ) http://monetdb.cwi.nl
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Muslea</surname>
            <given-names>I.</given-names>
          </string-name>
          (
          <year>1999</year>
          )
          <article-title>Extraction Patterns for Information Extraction Tasks: A Survey</article-title>
          . American Association for Artificial Intelligence
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Eikvil</surname>
            <given-names>L.</given-names>
          </string-name>
          (
          <year>1999</year>
          )
          <article-title>Information Extraction from World Wide Web - A Survey -</article-title>
          .
          <source>Technical Report 945</source>
          , Norvegian Computing Center
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Baumgartner</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Flesca</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2001</year>
          )
          <article-title>Visual Web Information Extraction with Lixto</article-title>
          .
          <source>In Proc. of VLDB</source>
          ,
          <year>2001</year>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Baumgartner</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Flesca</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>Declarative Information Extraction, Web Crawling and Recursive Wrapping with Lixto</article-title>
          .
          <source>In Proc. of LPNMR</source>
          ,
          <year>2002</year>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Baumgartner</surname>
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Flesca</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottlob</surname>
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>The Elog Web Extraction Language</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Mecca</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grumbach</surname>
            <given-names>S.</given-names>
          </string-name>
          (
          <year>1999</year>
          )
          <article-title>In search of the lost schema</article-title>
          .
          <source>ICDT</source>
          (
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Crescenzi</surname>
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mecca</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merialdo</surname>
            <given-names>P.</given-names>
          </string-name>
          (
          <year>2001</year>
          )
          <article-title>RoadRunner: Towards Automatic Data Extraction from Large Web Sites</article-title>
          .
          <source>VLDB</source>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Crescenzi</surname>
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mecca</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merialdo</surname>
            <given-names>P.</given-names>
          </string-name>
          (
          <year>2001</year>
          )
          <article-title>The RoadRunner Project: Towards Automatic Extraction of Web Data</article-title>
          .
          <source>ATEM</source>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Crescenzi</surname>
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mecca</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merialdo</surname>
            <given-names>P.</given-names>
          </string-name>
          (
          <year>2001</year>
          )
          <article-title>Automatic Web Information Extraction in the RoadRunner System</article-title>
          .
          <source>DASWIS</source>
          (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Crescenzi</surname>
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mecca</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Merialdo</surname>
            <given-names>P.</given-names>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>Wrapper Oriented Classification of Web Pages</article-title>
          .
          <source>ACM SAC</source>
          (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Laender</surname>
            <given-names>A.H.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ribeiro-Neto</surname>
            <given-names>B.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>da Silva</surname>
            <given-names>A.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Teixeira</surname>
            <given-names>J.S.</given-names>
          </string-name>
          (
          <year>2002</year>
          )
          <article-title>A Brief Survey of Web Data Extraction Tools</article-title>
          .
          <source>SIGMOD Records</source>
          <volume>31</volume>
          (
          <issue>2</issue>
          )
          <fpage>2002</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Flesca</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Manco</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Masciari</surname>
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rende</surname>
            <given-names>E.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Tagarelli</surname>
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2004</year>
          )
          <article-title>Web wrapper induction: a brief survey</article-title>
          .
          <source>AI</source>
          Communications
          <volume>17</volume>
          (
          <year>2004</year>
          )
          <fpage>57</fpage>
          -
          <lpage>61</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Chia-Hui</surname>
            <given-names>Chang</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kayed</surname>
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Girgis</surname>
            <given-names>M.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shaalan</surname>
            <given-names>K.</given-names>
          </string-name>
          (
          <year>2006</year>
          )
          <article-title>A Survey of Web Information Extraction Systems</article-title>
          .
          <source>IEEE Transactions on Knowledge and Data Engineering</source>
          , TKDE-
          <volume>0475</volume>
          -1104.R3
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Bossa</surname>
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>Gradation Project in Informatics</article-title>
          . University of Messina (in Italian)
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Bossa</surname>
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fiumara</surname>
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Provetti</surname>
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2006</year>
          )
          <article-title>A Lightweight Architecture for RSS Polling of Arbitrary Web sources</article-title>
          .
          <source>Proc. of WOA conference</source>
          . Available from http://mag.dsi.unimi.it/
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>