=Paper= {{Paper |id=Vol-1267/Munos |storemode=property |title=Learning Content Patterns from Linked Data |pdfUrl=https://ceur-ws.org/Vol-1267/LD4IE2014_Munos.pdf |volume=Vol-1267 |dblpUrl=https://dblp.org/rec/conf/semweb/Munoz14 }} ==Learning Content Patterns from Linked Data== https://ceur-ws.org/Vol-1267/LD4IE2014_Munos.pdf
         Learning Content Patterns from Linked Data

                                        Emir Muñoz1,2
                                    1
                                      Fujitsu Ireland Limited
                           2
                               National University of Ireland, Galway
                                E-mail: Emir.Munoz@ie.fujitsu.com



           Abstract. Linked Data (LD) datasets (e.g., DBpedia, Freebase) are
           used in many knowledge extraction tasks due to the high variety of do-
           mains they cover. Unfortunately, many of these datasets do not provide
           a description for their properties and classes, reducing the users’ freedom
           to understand, reuse or enrich them. This work attempts to fill part of
           this lack by presenting an unsupervised approach to discover syntactic
           patterns in the properties used in LD datasets. This approach produces
           a content patterns database generated from the textual data (content) of
           properties, which describes the syntactic structures that each property
           have. Our analysis enables (i) a human-understanding of syntactic pat-
           terns for properties in a LD dataset, and (ii) a structural description of
           properties that facilitates its reuse or extension. Results over DBpedia
           dataset also show that our approach enables (iii) the detection of data
           inconsistencies, and (iv) the validation and suggestion of new values for
           a property. We also outline how the resulting database can be exploited
           in several information extraction use cases.


     Keywords: Content Pattern, Linked Data, Information Extraction, #LD4IE


     1    Introduction

     Many companies and government agencies are massively publishing data on the
     Web as result of Open Data initiatives, from public and private sectors, that
     enable publicly-available data to be easily accessible by other users. Hence, the
     ability to extract information from those sources is becoming increasingly im-
     portant in the society for driving innovation, investment and economic growth.
     In the process, data publishers usually reuse and extend a public ontology/vo-
     cabulary to be used when publishing data on the Web in Linked Data shape.
     The recent update of the Linked Open Data (LOD) Cloud diagram1 shows that
     publishers still prefer to interlink their datasets mainly to DBpedia2 and reuse
     its vocabulary among other popular ones. Statistics provided by Linked Open
     Vocabularies (LOV) [17] reported the existence of 446 vocabularies (by July 7th,
     1
       http://data.dws.informatik.uni-mannheim.de/lodcloud/2014/ISWC-RDB/ (July
       2014)
     2
       http://dbpedia.org/About




21
     2014) with 10 classes and 20 properties in average. This numbers reveal the cum-
     bersome process for any publisher —person or application— to determine which
     properties or classes to use at the moment of design and publish new datasets.
         In an ideal scenario, each property present in an ontology/vocabulary should
     have attached its specification of domain and range metadata in order to in-
     crease its reuse. But in practice, this is not a reality, vocabularies lack of such
     definitions or guidelines for users indicating how to reuse a vocabulary. Here, it
     is worth mentioning that domain and range metadata are categorized as non-
     normative by RDF Schema [3, §4]. Furthermore, even in the cases when such
     metadata is explicitly mentioned, the LD datasets that use them might con-
     tain lexical errors, such as the values "’’’e-book ID:"@en and "See text"@en
     for the property http://dbpedia.org/property/isbn. This kind of errors are
     hard to detect in an automatic extraction process, such as the ones used by
     DBpedia. Our main goal is to discover a set of syntactic patterns in the con-
     tent (value) of each property that provides content-based rules for valid values
     of properties, and thus reduce errors and increase the quality of LD datasets.
     Datatypes in Linked Data (e.g., xsd:integer, xsd:gMonthDay) allow the val-
     idation of values that RDF properties can take. For instance, we can expect
     that the property dbp:dateCreated should follows a syntactic pattern, such as
     Number-Number-Number to cover a Year-Month-Day data field. More specifically,
     a pattern such as Small Num-Small Num-Medium Num. This guide us to state our
     hypothesis: In Linked Data, a given property value satisfies a fixed and small set
     of lexico-syntactic patterns.
         The former hypothesis guide us to build a database that contains all the
     possible content patterns for each RDF property in a Linked Data dataset.
     Organization. In this paper, we introduce RDF, domain, and range in Sec-
     tion 2. Section 3 introduces the concept of content patterns and the learning
     process to extract them from LD. Section 4 describes the algorithm for the
     database construction from DBpedia3 and its implementation. A discussion of
     some identified use cases for the patterns database is presented in Section 5.
     Relevant related work is presented in Section 6, to finally conclude about our
     work in Section 7.


     2     Background

     In this section, we briefly introduce RDF model and the main issues with the
     structure of properties in current datasets of the LOD cloud.


     2.1    RDF Model

     The RDF data model is used in the Semantic Web to give a universal structure
     to the content that enables interoperability and semantics. An RDF triple can
     be seen as an atomic fact representing the existence of a relationship between a
     3
         http://dbpedia.org/About




22
     subject resource and an object resource selected from a set of RDF terms. The
     RDF terms set is the union of three pair-wise disjoint sets: U, the set of all
     URI references; B, an infinite set of blank nodes; and L, the set of all literals.
     The set of literals is further decomposed into the union of two disjoint sets:
     Lp the set of all plain literals and Lt the set of typed literals. The mentioned
     relationship can be formally represented by a tuple (s, p, o) or RDF triple where
     s 2 U [ B represents the subject, p 2 U represents the predicate (instance of the
     class property), and o 2 U [ B [ L represents the object of the triple.
         This work focus on the set L, where each string value is analyzed to learn
     lexico-syntactic patterns [10] that exploit the structure (grammar) of the val-
     ues for a fixed property. Thus, we do learn content-based rules that models the
     data (string values) of a property, which we refer as content patterns or sim-
     ply patterns. As mentioned above, a literal ` 2 L can be either plain or typed.
     Plain literals are composed by plain strings, such as "Hello World", and usually
     are associated to a language tag (e.g., en, es), such as "Hello World"@en and
     "Hola Mundo"@es for English and Spanish, respectively. Typed literals are those
     that next to the lexical string have a datatype, such as "13"^^xsd:integer,
     representing the number 13. These datatypes are generally defined for XML
     Schema that cover numerics, booleans, dates, times, and so forth. Plain lit-
     erals without language tags are associated to xsd:string values by default.
     In addition, datatypes define which lexical forms are valid for a datatype. For
     instance, "Hello World"^^xsd:integer is an invalid statement whereas that
     "Hello World"^^xsd:string is valid.


     2.2   Domain, Range and their issues

     Vocabularies and schemas in Linked Data, and RDF specifically, aim to attach se-
     mantics to the user-defined classes and properties. RDF Schema (RDFS) [3] is an
     extension of RDF with four key terms that allow the specification of well-defined
     relationships between classes and properties. The four introduced elements are:
     rdfs:subClassOf, rdfs:subPropertyOf, rdfs:domain and rdfs:range (please
     see [15] for details). We focus on the last two elements, namely, rdfs:domain
     and rdfs:range to explain how our content patterns database can be used.
     rdfs:domain is used to state that the subject of an RDF triple with property p
     is a member of a given class c. Similarly, rdfs:range is used to state that the
     object of an RDF triple with property p is a member of a given class c. This
     allows us to put constraints, and later validate the actual types of values that
     are appropriate for a given property. Thus, facilitating a checking of the dataset
     to discover errors, or to suggest appropriate values for a property.


      ⌥                                                                               ⌅
     Example 1. The following RDF triples:


     ⌃                                                                                ⇧
      dbr:17049_Miron dbo:epoch "May 14, 2008"@en
      dbr:17049_Miron dbo:apoapsis "401288344481.673828"^^xsd:double




23
     describe features of the asteroid 17049 Miron4 . The first triple shows
     the predicate epoch5 (explained by DBpedia ontology as the “moment in
     time used as a reference point for some time-varying astronomical quan-
     tity”), where the domain and range of the property epoch are defined as:
     http://dbpedia.org/ontology/Planet class for planets, and xsd:string for
     string values, respectively6 . While, the second triple shows the predicate apoap-
     sis7 which does not present any description explaining its use in this context. t
                                                                                     u
         Using LOV SPARQL endpoint8 , we can compute that ca. 70% of the prop-
     erties have a defined domain and range. Also, that only 1.2% of the properties
     contains a not empty dcterms:description; and 40.9% contains a not empty
     rdfs:comment value. This shows that widely used LD datasets, such as DBpedia,
     lack of a minimal description about what/when/why to use a given property.


     3     Content Patterns

     The content of a property in an RDF triple, i.e. the data string in the object
     position, is considered as a sequence of characters. A lexical analysis over prop-
     erties’ content generates sequences of tokens, strings generated from an alphabet
     containing di↵erent types of characters: alphabetic, numeric, punctuation, etc.
     This sequence of tokens defines the structure of the content in an RDF property
     that is here used to identify patterns.


     3.1   Learning Patterns from Linked Data

     In the following, we present our method to generate the content patterns. In
     order to generate this patterns, first, we need an algorithm that allows us to
     learn structural information about string values. For this purpose, we do use
     DataProG presented by Lerman et al. [11], and designed for wrapper mainte-
     nance, wrapper verification and induction. This algorithm takes as input a set
     of positive examples, and using a word-level representation, or more accurately,
     a token-level representation, generates a set of lexico-syntactic rules that the
     tokens follow, from here on referenced as our content patterns. A token is con-
     sidered as a particular instance of a concept or type. For example, the type
     Number can have 1, 25, or 40 as instances. The types of the tokens are associ-
     ated to syntactic categories as depicted in Figure 1. Each category has its own
     semantics describing the datatype. For instance, Number category is divided in
     three sub-categories: Small (0 - 9), Medium (10 - 1000) and Large (larger than
     4
       http://dbpedia.org/resource/17049_Miron
     5
       http://dbpedia.org/ontology/epoch
     6
       The consideration of an asteroid as member of the class planet stated by the example
       RDF triple is not a discussion covered in this paper but it is related to the question
       how a given RDF ontology represents the real world.
     7
       http://dbpedia.org/ontology/apoapsis
     8
       http://lov.okfn.org/endpoint/lov_aggregator




24
     1000). Here, every string appearing in at least k examples will be represented by
     a token type (see Example 2). Formally, let KpT = {k1 , k2 , . . . , km } be the set of
     patterns for property p in a LD dataset T , where every pattern ki is a sequence
     of syntactic classes w.r.t. the one in Figure 1.




                 Fig. 1: Portion of the token type syntactic hierarchy [11].

     Example 2. Given a property p with value in the set Sp = {14.1, 362.5, 95.0},
     the learning process should return a content pattern set: KpT = {[Number
     . Number]}. DataProG algorithm over Sp returns two content patterns:
     (k1 ) [Number Punctuation Number], and its specification (k2 ) [Medium Number
     . Small Number], which is fine-grained. So far, S satisfies both patterns (k1 ) and
     (k2 ). But, whenever elements in the input set follows a slightly di↵erent syntax,
     the set KpT of patterns changes and becomes more general or coarse-grained. For
     example, adding the element 5.3i (a imaginary number) to the former set Sp , we
     have Sp0 = {14.1, 362.5, 95.0, 5.3i}, which will change the last former syntactic
     category (i.e. Number) in the previous patterns (k1 ) and (k2 ) for Alphanum. t   u
         As it is, our test data source, i.e. DBpedia, only contains “examples” of values
     for a given property. We do require that the learning patterns algorithm accepts
     as input only positive examples. DataProG algorithm satisfies this requirement.
     Then, it is a good choice to be used in this work for the generation of content
     patterns. (Note that our method is flexible enough to accept other learning
     pattern algorithms.)


     4     Database Construction
     In this section, we explain our methodology to build a content patterns database
     from a Linked Data dataset. First, we pre-process our test dataset, i.e. DBpedia,
     and present a survey of the properties found in it. Second, based on the learning
     process depicted in Section 3, we introduce our algorithm for pattern extraction
     in order to build the content patterns database from our Linked Data dataset.

     4.1   DBpedia Properties Survey
     We used DBpedia v3.9, gathered on May 2014, which contains over 2.4 billion
     RDF triples with instances of 53,230 properties. To analyze each property, the




25
     DBpedia dump was fragmented by properties in order to extract all the patterns.

      ⌥                                                                            ⌅
     For one property, the analysis can be done using the following SPARQL query:


      ⌃                                                                            ⇧
          SELECT ?sub ?obj
          WHERE { ?sub  ?obj . }

     where we ask for all subject (?sub) and object (?obj) elements that ap-
     pear in the RDF triples where the predicate corresponds to the property
     http://dbpedia.org/property/placeOfBirth.
        In this work, we do use HDT (header, dictionary, triples) [7] —a compact
     data structure and binary serialization format for RDF— for RDF data manage-
     ment. HDT allows us to search and browse DBpedia dataset using S-P-O-like9
     queries where we can indicate fixed values for any of these three positions. We
     then fragment the whole dataset, generating small and manageable indices per
     property. Table 1 shows the list with the top-20 most frequent properties found
     in DBpedia, being the sameAs property the most frequent. This list is mainly
     composed by properties coming from the most popular vocabularies: FOAF10 ,
     Dublin Core11 , OWL12 , DBpedia.

                Table 1: List of the top-20 most frequent properties in DBpedia.
                     Freq.                         Property
                  84,724,705   http://www.w3.org/2002/07/owl#sameAs
                  61,709,033   http://dbpedia.org/ontology/wikiPageUsesTemplate
                  44,603,034   http://purl.org/dc/terms/subject
                  42,057,021   http://dbpedia.org/ontology/wikiPageRevisionID
                  42,057,021   http://dbpedia.org/ontology/wikiPageID
                  42,056,971   http://www.w3.org/ns/prov#wasDerivedFrom
                  37,784,587   http://www.w3.org/2000/01/rdf-schema#label
                  34,226,925   http://xmlns.com/foaf/0.1/primaryTopic
                  34,226,925   http://xmlns.com/foaf/0.1/isPrimaryTopicOf
                  28,440,690   http://www.w3.org/1999/02/22-rdf-syntax-ns#type
                  20,488,114   http://dbpedia.org/ontology/wikiPageExternalLink
                  18,674,346   http://dbpedia.org/ontology/wikiPageRedirects
                  12,629,958   http://dbpedia.org/property/hasPhotoCollection
                  10,408,296   http://dbpedia.org/property/name
                   8,924,014   http://xmlns.com/foaf/0.1/name
                   8,489,275   http://purl.org/dc/elements/1.1/rights
                   5,176,265   http://www.w3.org/2004/02/skos/core#broader
                   5,070,656   http://dbpedia.org/property/language
                   4,803,302   http://xmlns.com/foaf/0.1/depiction
                   4,803,300   http://dbpedia.org/ontology/thumbnail

         Each index contains RDF triples from DBpedia in a S-P-O order optimized
     for fast query answering. During our analysis we take one by one the property
     9
        The order for each RDF triple is subject - predicate - object.
     10
        http://xmlns.com/foaf/spec/
     11
        http://dublincore.org/documents/dcmi-terms/
     12
        http://www.w3.org/TR/owl-ref/




26
     indices, where each one contains only RDF triples for one fixed property. Each
     RDF triple in the index is parsed to extract the object position and determine
     whether it is a literal, URI or blank node to form the set Vp of values for
     property p. (Blank nodes do not contribute to our method—since they do not
     contain any URI or literal—, so they are discarded. On the other hand, for URIs
     we can still extract some domain patterns.) We further determine if the literals
     are plain or typed. From the extracted set L for a property index, we determine
     that 19.25% correspond to elements in Lp (plain literals), 18.02% to elements
     in Lt (typed literals), and 62.73% elements that do not contain any language
     or datatype associated (by default linked to xsd:string). Among the literals
     with an existing datatype, the most common datatype found was xsd:integer.
     Table 2 shows the top-10 most frequent datatypes in DBpedia that are mainly
     related with numbers, dates and time representation.

            Table 2: List of the top-10 more frequent datatypes in DBpedia.
                  Freq.                           Datatype
               39,938,610   http://www.w3.org/2001/XMLSchema#integer
                3,449,581   http://www.w3.org/2001/XMLSchema#double
                3,268,506   http://www.w3.org/2001/XMLSchema#date
                1,677,864   http://www.w3.org/2001/XMLSchema#float
                1,216,821   http://www.w3.org/2001/XMLSchema#gYear
                 908,155    http://dbpedia.org/datatype/second
                 679,934    http://www.w3.org/2001/XMLSchema#nonNegativeInteger
                 275,376    http://www.w3.org/2001/XMLSchema#gMonthDay
                 204,753    http://dbpedia.org/datatype/squareKilometre
                 196,569    http://dbpedia.org/datatype/minute


     4.2   The Algorithm

     We will now design an algorithm to obtain the sets KpT of patterns for each
     property p in the dataset T . For each property we extracted the set Vp of
     values that is passed as input to the learning patterns algorithm. This action
     generates the content patterns per property. Algorithm 1 formalizes the approach
     to construct the content patterns database. The first part of the algorithm (lines
     3-6) represents the parsing of the LD dataset T , and generation of the set Vp ,
     filtering values that are not in L [ U. Once finished the parsing, the patterns can
     be generated calling DataProG (line 9); compute their corresponding coverage
     (line 10), and then write the 3-tuples into the database (line 11).


     4.3   Implementation

     Algorithm 1 was implemented using Java language, and tested over DBpedia
     dataset. In terms of implementation, due to the size of some sets Vp , we op-
     tionally optimized the processing time and memory required for the patterns
     computation, by truncating the size to 500 elements maximum. This should be
     executed after line 7 and before line 9. In our following experiments, we applied
     this optimization to meet the hardware constraints imposed by the machine used.




27
     Algorithm 1 Construction of a Content Patterns Database
     Input: a Linked Data dataset T
     Output: a content patterns database
      1: Let W be the set of all properties in T
      2: Let Vp be set of values for a property p 2 W
      3: for all RDF triple (s, p, o) 2 T do
      4:    if o 2 L [ U then
      5:        Vp .add(o)
      6:    end if
      7: end for
      8: for all p in U do
      9:    KpT = DataProG(Vp )
     10:    Compute coverage (cov) for each ki 2 KpT
     11:    Write the 3-tuple (p, ki , covki ) for each property/pattern into the database
     12: end for

     However, this is still an optional optimization, so can be skipped or discarded
     for bigger hardware resources.
         The machine used to process DBpedia and build the database was a virtual
     machine running Ubuntu Linux 12.04 with an Intel i7 processor, and 8GB of
     RAM memory. The source code with the implementation of the current approach
     used to generate a content patterns database from a Linked Data dataset can be
     found on-line in https://github.com/emir-munoz/ld-patterns. A dump of
     the database is available in a tabular separated values (tsv) file, which contains
     the generated patterns for DBpedia: propertypatternoverage,
     where the metric coverage is used to measure the proportion of the dataset
     for which the learning algorithm makes a prediction, i.e. all the examples that
     satisfy the pattern divided by the total number of examples. The coverage metric
     range is [0.0, 1.0], being 1.0 the full coverage of the data examples.


     5      Discussion

     In this section, we present a discussion about the possible use cases where the
     generated database can be helpful. In practice, the values in the rdfs:range of
     a property are not uni-type, which does not violate the formal definition of RDF
     model in Section 2. However, this is translated in properties p whose set Vp are
     composed by URIs mixed with literals and even blank nodes13 . This fact makes
     more challenging the reuse of many properties. The survey performed on literals
     in DBpedia knowledge base showed that only ca. 40% falls into the categories
     of plain and typed literals, leaving the rest, 60%, as default literals linked to
     the xsd:string type. Nevertheless, we consider all of them in our analysis and
     posterior processing. When applying Algorithm 1 to DBpedia we generate the
     main output of this work: A database composed by ca. 500,000 content patterns
     associated to properties in Linked Data. With an average of 17.3 patterns per
     13
          In LOV, 374 unique properties have a range defined as blank node.




28
     property. In other words, we were able to find content patterns in properties val-
     ues of a Linked Data dataset. This result comes to validate our initial hypothesis
     which stated that in Linked Data datasets, a given property satisfies a small set
     of lexico-syntactic patterns whenever the range of the property is not an empty
     value or blank node.
         We report in Table 3 few examples of content patterns extracted for eight
     properties. Each pattern is accompanied by its coverage measure. We can notice
     that the patterns of some properties are easy to deduce, such as dbp:barcode
     or dbo:address, but it is not the same in other cases, such as dbp:admCtrOf,
     dbp:1stishhead or dbp:2006MeanHhIncome—where it is hard even to figure out
     the context where those properties are used. This lead us to define and discuss
     a set of use cases where it is handy to count with such database.

                      Table 3: Examples of content patterns identified.
           Property                                Content Patterns                       Coverage
     dbp:barcode          LARGE/FLOAT NUMBER                                                 1.0
                          NUMBER FIRST UPPERCASE FIRST UPPERCASE                           0.318
     dbo:address          ALPHANUMERIC FIRST UPPERCASE Road                                0.056
                          ALPHANUMERIC FIRST UPPERCASE Street                              0.044
                          ALPHA of ALL LOWERCASE significance of FIRST UPPERCASE           0.298
     dbp:admCtrOf         FIRST UPPERCASE District                                         0.272
                          Town of ALPHA significance of FIRST UPPERCASE                    0.206
                          FIRST UPPERCASE                                                  0.978
     dbo:editorTitle      Editor                                                            0.79
                          Editor - in - Chief                                              0.282
                          ALPHANUMERIC - NUMBER - NUMBER - NUMBER                           0.56
     dbo:isbn             NUMBER - NUMBER - NUMBER - NUMBER                                 0.56
                          ALPHANUMERIC 978 - SMALL NUMBER - NUMBER - NUMBER - SMALL NUMBER 0.046
                          vol . SMALL NUMBER                                                0.54
     dbp:1stishhead       ALPHA . SMALL NUMBER                                              0.54
                          vol . SMALL NUMBER cont .                                         0.02
                          LARGE/FLOAT NUMBER                                               0.682
     dbp:2006MeanHhIncome ALPHANUMERIC / A                                                 0.122
                          ALPHANUMERIC Available                                           0.108
                          NUMBER                                                           0.873
     dbp:dateCreated      MEDIUM NUMBER                                                    0.731
                          MEDIUM NUMBER - SMALL NUMBER - SMALL NUMBER                      0.233

        To guide our discussion, we present a list with some identified use cases:
     1. The database can facilitate user searches to discover and reuse existing prop-
        erties. Similar to a search by example, given an example value the user can
        search for all the patterns that cover that example.
     2. As a derivation of the previous use case, this database can facilitate a human-
        understanding of the lexicon of properties existing in a Linked Data dataset
        in general beyond the simple and not selft-explanatory label.
     3. The database can be used to check atypical values (outliers) inside the
        same knowledge base, based on the most in/frequent patterns. The outliers
        might correspond to errors because of failures in an automatic extraction, or
        changes/updates in the lexicon of properties that will require to re-run the
        Algorithm 1 to generate a new database.
     4. Most ambitiously, the database obtained can help to the automatic genera-
        tion of schemas from tabular data. For example, when trying to convert CSV




29
         to RDF format using the SPARQL-based data mapping language TARQL
         [5], users need to define how each column will be represented in RDF.
      5. In terms of information extraction, this database can be used for instance in
         the table extraction problem. In a table, the columns with string values can
         be mapped to RDF properties, by matching the cell values with patterns in
         the database. This might help to improve the recall measure when performing
         approaches like the one described in [14].
      6. Document wrappers will also benefit from this database. Extracted values
         by a wrapper, via CSS or XPath queries over HTML pages can be validated
         against the corresponding patterns.




                          Fig. 2: Wrapper use case for the database.

         A practical example is shown in Figure 2 where the lexical patterns database
     is generated from a Linked Data dataset, and used to validate extracted data
     by a wrapper. Consider as example, a wrapper that extracts data from the busi-
     ness card of a person embedded in his HTML page, that contains the following

      ⌥                                                                             ⌅
     attributes and values:
      E-mail: user1@domain.com
      Given name: John


      ⌃                                                                              ⇧
      Surname: Snow
      Web address: www.jsnow.com

     we could use both the attributes (properties) name and its values to generate
     an RDF representation of this data. The first field, E-mail can be mapped to

      ⌥                                                                              ⌅
     dbp:email that is further associated with the following patterns in our database:


      ⌃                                                                                   ⇧
      ALPHANUMERIC PUNCTUATION ALL_LOWERCASE PUNCTUATION ALL_LOWERCASE
      ALPHANUMERIC @ ALL_LOWERCASE . ALL_LOWERCASE

     By using a conversion of the patterns to regular expressions (cf. [9]) we can check
     that this attribute value, user1@domain.com, match both regular expressions,
     and then conclude that it is valid since it satisfies the content patterns. Therefore,
     the extraction task is successfully achieved and we can represent the extracted

      ⌥                                                                                   ⌅
     data in RDF as:

      ⌃                                                                                 ⇧
      _:l1 dbp:email "user1@domain.com"@en .

     were :l1 is a blank node (in the subject position) that represents the business
     card itself. The same process can be followed for the other attributes. In practice,
     RDF vocabularies to model information extraction tasks, like this barely showed




30
     here, are needed. This is still an open research area that could help adding some
     metadata regarding the variables involved in the extraction, or even to assign
     URIs to identify common IE modules.

     6   Related Work
     A significant amount of research activity have been made in the topic of pattern
     recognition (see [2,12] among others). Pattern-based extraction of information
     and the use of lexico-syntactic patterns are far from new and have been used
     in a variety of tasks [10,4,16]. In information extraction, patterns are widely
     used on the Web [6,1]. Within the range of uses for patterns, [6,13] reported a
     reasonable success in ontology creation and population. Recently, Linked Data
     has been exploited as a background knowledge base to support wrapper induction
     [8], HTML tables interpretation [14], among other tasks. However, as far as we
     know, this paper is the first to explore the learning of lexico-syntactic patterns
     from string data embedded in LD datasets for validation. Our approach was
     inspired by algorithms proposed for wrapper induction [11,8], and a previous
     work focused on RDF extraction from Wikipedia tables [14].

     7   Conclusions and Future Work
     In this paper, we presented a method to build a content patterns database gen-
     erated exclusively from DBpedia knowledge base, but applicable to any Linked
     Data dataset. By exploiting the implicit grammar present in the content of RDF
     properties whose range is in the set of literals, we could generate content pat-
     terns for such properties. These syntactic patterns are rich sources to be used in
     Information Extraction tasks as shown in this paper. Furthermore, we present
     some possible use cases where the database can be exploited.
         To the best of our knowledge, our work is the first in conducting an analysis
     over properties with textual values; and also the first in generate a content
     pattern database from Linked Data datasets.
         As future work, we identified two major directions in which our work can be
     extended and/or improved: (1) The content patterns database can be used in
     the evaluation of the knowledge base used to build the former. In other words,
     we can perform a checking of the RDF triples examining cases where the object
     values do not comply with the most common generated patterns. This will guide
     us to a consistency analysis of the knowledge represented by the LD dataset,
     where this can be cleaned increasing its value. This task also will give insights
     on common errors incurred in automatic extractions from semi-structured data
     sources. (2) The consideration of other LD datasets besides DBpedia, such as
     Freebase could help to enrich in both size and quality dimensions the database,
     making it more valuable.
     Acknowledgments. The author would like to thank Mario Arias for his work
     in HDT software and, Bianca Pereira and the anonymous reviewers for the con-
     structive comments and suggestions to improve the paper. This work has been




31
     supported by KI2NA project funded by Fujitsu Laboratories Limited and Insight
     Centre for Data Analytics at NUI Galway (formerly known as DERI).

     References
      1. Banko, M., Cafarella, M.J., Soderland, S., Broadhead, M., Etzioni, O.: Open Infor-
         mation Extraction from the Web. In: Proceedings of the 20th International Joint
         Conference on Artifical Intelligence. IJCAI’07, San Francisco, CA, USA, Morgan
         Kaufmann Publishers Inc. (2007) 2670–2676
      2. Bishop, C.M.: Pattern Recognition and Machine Learning (Information Science
         and Statistics). Springer-Verlag New York, Inc., Secaucus, NJ, USA (2006)
      3. Brickley, D., Guha, R., McBride, B.: RDF Schema 1.1. http://www.w3.org/TR/
         rdf-schema/ (February 2014)
      4. Brin, S.: Extracting Patterns and Relations from the World Wide Web. In: Selected
         Papers from the International Workshop on The World Wide Web and Databases.
         WebDB ’98, London, UK, UK, Springer-Verlag (1999) 172–183
      5. Cyganiak, R.: SPARQL for Tables: Turn CSV into RDF using SPARQL syntax.
         https://github.com/cygri/tarql (August 2013)
      6. Etzioni, O., Cafarella, M., Downey, D., Kok, S., Popescu, A.M., Shaked, T., Soder-
         land, S., Weld, D.S., Yates, A.: Web-scale Information Extraction in Knowitall:
         (Preliminary Results). In: Proceedings of the 13th International Conference on
         World Wide Web. WWW ’04, New York, NY, USA, ACM (2004) 100–110
      7. Fernández, J.D., Martı́nez-Prieto, M.A., Gutiérrez, C., Polleres, A., Arias, M.:
         Binary RDF Representation for Publication and Exchange (HDT). Web Semantics:
         Science, Services and Agents on the World Wide Web 19 (2013) 22–41
      8. Gentile, A.L., Zhang, Z., Augenstein, I., Ciravegna, F.: Unsupervised Wrapper
         Induction Using Linked Data. In: Proceedings of the 7th International Conference
         on Knowledge Capture. K-CAP’13, New York, NY, USA, ACM (2013) 41–48
      9. Goyvaerts, J., Levithan, S.: Regular Expressions Cookbook - Detailed Solutions
         in Eight Programming Languages, Second Edition. O’Reilly (2012)
     10. Hearst, M.A.: Automatic Acquisition of Hyponyms from Large Text Corpora. In:
         Proceedings of the 14th Conference on Computational Linguistics. COLING ’92,
         Stroudsburg, PA, USA, Association for Computational Linguistics (1992) 539–545
     11. Lerman, K., Minton, S.N., Knoblock, C.A.: Wrapper maintenance: A machine
         learning approach. J. Artif. Int. Res. 18(1) (February 2003) 149–181
     12. Liu, B.: Web Data Mining: Exploring Hyperlinks, Contents, and Usage Data.
         Data-Centric Systems and Applications. Springer (2011)
     13. Maynard, D.: Using Lexico-Syntactic Ontology Design Patterns for Ontology Cre-
         ation and Population. In: Proc. of the Workshop on Ontology Patterns. (2009)
     14. Muñoz, E., Hogan, A., Mileo, A.: Using Linked Data to Mine RDF from
         Wikipedia’s Tables. In: Proceedings of the 7th ACM International Conference
         on Web Search and Data Mining. WSDM’14, New York, NY, USA, ACM (2014)
         533–542
     15. Muñoz, S., Pérez, J., Gutierrez, C.: Simple and Efficient Minimal RDFS. Web
         Semantics: Science, Services and Agents on the World Wide Web 7(3) (2009) 220–
         234 The Web of Data.
     16. Soderland, S.: Learning Information Extraction Rules for Semi-Structured and
         Free Text. Mach. Learn. 34(1-3) (February 1999) 233–272
     17. Vatant, B., Vandenbussche, P.Y.: Linked Open Vocabularies (LOV). http://lov.
         okfn.org/ (July 2014)




32