2012-08-27 4 views
2

저는 Microsoft Corp, Kimberly Clark Corporation 등과 같은 회사 이름 목록을 보유하고 있습니다. 같은 필드를 검색하고자 :회사 이름 목록, 회사 이름 가져 오기 방법, 웹 사이트 URL, 설립 연도, 직원 수 등

  1. 그것의 회사 로고 구글에 대한
  2. Georgraphic 식별자가
  3. 웹 사이트 URL
  4. 년 설립
  5. 증권 거래소와 증권 거래소 시세를 매핑
  6. 기호
  7. 지난 몇 일 위키 피 디아
  8. 자회사와 모회사의 목록에서/추상적 인 약
  9. 통해 주가를 얻을 수있는 방법. 예를 들어 Boeing의 경우 Jeppessen과 Availl, Inc 등이 될 수 있습니다.

Sparql과 Dbpedia를 살펴 보았습니다. sparql 쿼리를 사용하여 이러한 정보 중 일부를 검색하는 방법에 대한 제안 사항은 무엇입니까? (시작하기 위해 모든 필드를 검색 할 필요가 없습니다.

감사합니다!

+2

나는 비슷한 문제를 다루려고하고 있으며 어떻게 지내는지 알고 싶어합니다. –

답변

1

다음과 같은 sparql 쿼리로 시작할 수 있습니다. 그것은 이름 = Apple Inc.의 "를 갖는 주제에 대한 모든 트리플을 검색

select distinct ?subject ?predicate ?object where { 
    ?subject ?predicate ?object . 
    ?subject <http://xmlns.com/foaf/0.1/name> "Apple Inc."@en . 
} 

SPARQL results

subject  predicate object 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://www.w3.org/2002/07/owl#Thing 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/ontology/Company 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://www.opengis.net/gml/_Feature 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/ontology/Organisation 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/ontology/Agent 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://schema.org/Organization 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/ComputerCompaniesOfTheUnitedStates 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/SoftwareCompaniesOfTheUnitedStates 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/RetailCompaniesOfTheUnitedStates 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/CompaniesEstablishedIn1976 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/ComputerHardwareCompanies 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://umbel.org/umbel/rc/Organization 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/Company108058098 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/HomeComputerHardwareCompanies 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/CompaniesBasedInCupertino,California 
http://dbpedia.org/resource/Apple_Inc. http://www.w3.org/1999/02/22-rdf-syntax-ns#type  http://dbpedia.org/class/yago/MobilePhoneManuFACturers 
3

은이 같은 쿼리를 사용하여 시작할 수 있습니다.

select * where { 
    values ?company { dbpedia:Microsoft 
        <http://dbpedia.org/resource/Apple_Inc.> 
        dbpedia:Kimberly-Clark 
        } 
    OPTIONAL { { ?company dbpprop:logo ?logo FILTER(isIRI(?logo)) } 
      UNION 
      { ?company foaf:depiction ?logo FILTER(isIRI(?logo)) } } 
    OPTIONAL { ?company dbpedia-owl:abstract ?abstract 
      FILTER(langMatches(lang(?abstract),"EN")) } 
    OPTIONAL { ?company geo:lat ?latitude ; 
         geo:long ?longitude } 
    OPTIONAL { ?company dbpedia-owl:foundingDate ?foundingDate } 
    OPTIONAL { ?company dbpedia-owl:wikiPageExternalLink ?externalLink } 
    OPTIONAL { ?company dbpprop:symbol ?stockSymbol } 
    OPTIONAL { ?company dbpedia-owl:subsidiary ?subsidiaryPage } 
} 

SPARQL Results

나는 이것을 DBpedia 페이지의페이지에서 본 속성에 기반을 두었습니다., Kimberly-ClarkApple, Inc.. 데이터는 특히 청결하지 않고, 그 때문에, 나는 쿼리에 대한 몇 가지 필터 추가 : 없음이 목록 자회사의 모든

  • 를, 마이크로 소프트의 자회사 인 속성이 자회사에 관련되지 않고 아마도 일부 자회사를 열거하는 페이지).

  • 일부 회사는 로고에 대해 잘못된 정보를 가지고 있습니다 (따라서 FILTER : isIRI). 예를 들어, Apple dbpprop:logo은 정수 150입니다. 나는 그것이 위키 피 디아 infobox 라인 | logo = [[File:{{#property:p154}}|150px]]에서 왔다고 생각하는데, 여기서는 150이 더 의미있는 가치보다는 뽑히고 있습니다. isIRI 필터링은 약간의 도움이됩니다.

  • 일부 회사는 여러 창립 날짜를 가지고 있습니다. 나는 당신이 여러 사람들 중 어떤 사람들을 사용할 지 어떻게 결정할지 모르겠습니다.

  • 일반적으로 회사 페이지는 외부 링크로 표시되지만 페이지와 연결된 모든 외부 링크는 회사 페이지가 아닙니다. 회사 페이지로 선택하는 방법을 잘 모르겠습니다.

이 모든 정보는 DBpedia에서 많은 정보를 얻을 수있는 것처럼 보입니다.

+0

나는 SPARQL 결과가 거대하지만 동일한 작업을 수행하고있다. 왜 이런거야? 내가 선택한 것은 로고와 회사 이름이 포함 된 결과 집합입니다. 이것이 가능한가? – gray

+0

@gray [유사한 댓글]이 있음을 유의하십시오 (http://stackoverflow.com/questions/12150399/given-a-list-of-company-names-how-to-fetch-company-names-website-url). -year-est/16765172? noredirect = 1 # comment23171220_12150399) 질문에 이미 있습니다. –

관련 문제