KR20170073693A - 유사 그룹 요소 추출 - Google Patents

유사 그룹 요소 추출 Download PDF

Info

Publication number
KR20170073693A
KR20170073693A KR1020177014299A KR20177014299A KR20170073693A KR 20170073693 A KR20170073693 A KR 20170073693A KR 1020177014299 A KR1020177014299 A KR 1020177014299A KR 20177014299 A KR20177014299 A KR 20177014299A KR 20170073693 A KR20170073693 A KR 20170073693A
Authority
KR
South Korea
Prior art keywords
product
search result
repeated
communication information
information
Prior art date
Application number
KR1020177014299A
Other languages
English (en)
Other versions
KR102024998B1 (ko
Inventor
프리야브라스 다쿠아
Original Assignee
이베이 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이베이 인크. filed Critical 이베이 인크.
Publication of KR20170073693A publication Critical patent/KR20170073693A/ko
Application granted granted Critical
Publication of KR102024998B1 publication Critical patent/KR102024998B1/ko

Links

Images

Classifications

    • G06F17/30675
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • G06F17/30867
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation

Abstract

유사 그룹 요소를 추출하는 기술이 설명된다. 일 실시예에서, 수신된 통신정보는 통신정보 내 요소의 패턴을 반복하기 위해 분석된다. 수신된 통신정보의 특정 요소를 식별하는 입력이 사용자 인터페이스를 통해 수신될 수 있다. 그런 다음 시스템은 특정 요소와 연관된 반복하는 패턴 내의 특정 위치를 식별할 수 있다. 반복하는 패턴 내에서 동일한 위치에 있는 통신정보 내의 모든 요소는 식별되거나, 저장되거나 또는 명시되거나 미리 선택된 포맷으로 출력될 수 있다. 다양한 실시예는 멀티페이지 응답 통신, 다양한 패턴 인식 기술 및 자동 또는 사용자 지원 시스템을 감안할 수 있다.

Description

유사 그룹 요소 추출{EXTRACTING SIMILAR GROUP ELEMENTS}
관련 출원의 참조
본 출원은 2014년 10월 28일자로 출원된 미국 특허 출원 제14/526,231호의 우선권의 이익을 주장하며, 그 전체가 본 명세서에 참조 문헌으로 인용된다.
기술 분야
본 출원은 일반적으로 패턴 인식 및 데이터 추출의 기술 분야에 관한 것으로, 특히, 네트워크 통신에서 반복된 패턴을 식별하고 반복된 패턴 구조로부터 데이터 요소를 추출하는 시스템 및 방법에 관한 것이다.
통신 및 컴퓨팅 기술이 발전함에 따라 인터넷 및 다양한 광역 네트워크 및 근거리 네트워크의 규모와 복잡성이 커지고 있다. 웹 크롤러(web crawler), 웹 스크래퍼(web scraper) 및 웹 리퍼(web ripper)는 네트워크에서 정보를 수집하는 도구이다. 현재의 많은 웹 크롤러 및 웹 스크래핑 도구는 콘텐츠 서버와 같은 타겟 콘텐츠 소스에서 사용 가능한 모든 정보를 수집한다. 이 정보는 콘텐츠 소스에 관한 정보를 제공하지만, 정보는 필터링되지 않으며 정보가 수집되는 목적에 따라 정보량이 불필요하게 커질 수 있다. 다른 웹 크롤러 및 웹 스크래핑 도구는 타겟 정보를 검색하지만, 특별히 식별된 정보만 검색할 수 있으며, 다른 유형의 정보를 누락할 수 있다. 본 명세서에 설명되는 시스템, 디바이스 및 방법은 네트워크에서 정보를 추출하기 위한 향상된 도구를 제공한다.
도 1은 특정 실시예에 따른 제품 검색 결과 통신정보(product search result communication)의 양상을 도시한다.
도 2는 특정 실시예에 따른 제품 검색 결과 통신정보의 양상을 도시한다.
도 3은 특정 실시예에 따른 제품 검색 결과 통신정보의 양상을 도시한다.
도 4는 특정 실시예에 따라 그룹 요소를 추출하는 방법을 도시한다.
도 5는 특정 실시예에 따라 그룹 요소를 추출할 수 있는 디바이스의 양상을 도시한다.
도 6은 특정 실시예에 따라 그룹 요소를 추출할 수 있는 디바이스의 양상을 도시한다.
도 7은 특정 실시예에 따라 그룹 요소를 추출하는 방법을 도시한다.
도 8은 특정 실시예의 일부일 수 있는 컴퓨팅 시스템의 다양한 양상을 구현하는데 사용될 수 있는 시스템을 도시한다.
본 명세서에 설명된 실시예는 패턴 인식 및 데이터 추출에 관한 것으로, 특히 반복하는 구조를 갖는 웹 페이지 또는 제품 검색 결과 통신정보(product search result communication)로부터 유사 그룹 요소를 추출하는 시스템 및 방법에 관한 것이다.
예를 들어, 일 실시예에서, 시스템 사용자는 장난감 자동차에 관한 정보를 수집하기를 원할 수 있다. 입력에 응답하여, 시스템은 장난감 자동차에 관한 정보를 네트워크 자원에 질의할 수 있다. 관련 가격을 가진 217개의 제품 리스트가 반환되면, 사용자는 첫 번째 장난감 자동차에 대해 단일 가격과 단일 이름을 선택할 수 있다. 시스템은 자동으로 리스트의 구조를 분석하여 217개의 장난감 자동차 리스트 각각에 대해 반복되는 구조를 식별한다. 시스템은 이러한 구조 정보를 사용하여 시스템이 첫 번째 장난감 자동차의 단일 가격과 단일 이름을 선택하는 입력을 기반으로 리스트에 있는 217개의 장난감 자동차의 이름과 가격을 추출한다. 이 정보는 자동으로 테이블 또는 데이터베이스로 구조화되어 시스템 메모리에 저장될 수 있다.
추가적인 예로서, 특정 실시예에서, 시스템 사용자는 네트워크 자원으로부터 특정 제품 유형에 관한 가격 정보를 수집하기를 원할 수 있다. 시스템은 웹 자원에 제품 검색 요청을 보내고 제품 및 관련 가격 리스트를 수신할 수 있다. 임의의 개수의 제품이 단일 검색 결과에서 서술될 수 있으며, 검색 결과로 수십 또는 수천 개의 제품이 나열된다면, 각 제품에 대해 원하는 정보를 식별하기 위해 통신을 통해 파싱하는 것은 비효율적일 수 있다. 제품 검색 결과 통신정보에 둘 이상의 제품 및 가격이 나열되어있다면, 통신정보는 각 제품마다 반복하는 구조를 가질 수 있다. 이 구조는 예를 들어 이름, 사진, 설명, 판매원, 가격 및 기타 그러한 정보에 대한 노드를 포함할 수 있다. 원하는 정보를 추출하기 위해 전체 통신정보를 개별적으로 검색하는 대신, 본 명세서에 기술된 실시예는 제품 검색 결과 통신정보를 분석하여 각 제품에 대해 반복하는 구조를 식별한다. 시스템은 단일 제품으로부터 정보의 단일 요소를 식별하는 입력을 원하는 정보로서 수신할 수 있다. 실시예는 반복하는 패턴 내에서 선택된 정보 요소와 연관된 공통 부모 노드 및 요소 선택 계단식 스타일 시트(element selection cascading style sheet)를 식별할 수 있다. 그러면 시스템은 구조 정보를 사용하여 각 제품의 관련된 요소 정보를 추출할 수 있다.
웹 리퍼(web ripper), 웹 크롤러(web crawler) 및 웹 스크레퍼(web scraper)는 네트워크를 탐사하여 정보를 수집하는 시스템이다. 이들은 예를 들어 분석 및 처리를 위해 방문한 각 웹 사이트의 정보를 다운로드하고 저장할 수 있다. 웹 크롤러는, 예를 들어, 방문할 URL(uniform resource locator)의 리스트로 시작하여 해당 URL과 연관된 페이지의 모든 링크를 식별하여 방문한 페이지에서 정보를 수집한다. 웹 스크래퍼는 유사한 도구를 사용하여 웹 사이트 정보를 수집한 다음, 서로 다른 네트워크 소스로부터 구조화되지 않은 정보를 가져 와서 정보를 구조화된 포맷이나 데이터베이스로 수집할 수 있다. 그러나 이러한 동작은 사용 가능한 모든 정보를 수집하거나 필요한 정보를 추출하기 위해 사용 가능한 모든 정보를 검색한다.
많은 네트워크 시스템에서, 특정 유형의 자동 스크래핑 또는 리핑을 방지하기 위한 구조 또는 장벽이 있다. 특정 환경에서 통신정보를 스크래핑하거나 리핑하는 것은 네트워크의 가용 대역폭의 상당 부분을 차지하고 네트워크 자원 공급자에게 상당한 비용을 추가시킬 수 있다. 따라서 통신정보의 전체 내용을 처리함으로써 그러한 네트워크 자원으로부터의 정보의 완전 자동화된 처리는 비실용적이거나 비효율적일 수 있다. 그러나 사용자가 대규모 리스트를 수동으로 검사하는 것은 비효율적이며 대용량 데이터의 경우에는 특히 그러하다. 본 명세서에 기술된 실시예는 대량의 정보 내에서 반복되는 구조의 단일 데이터 리스트의 수동 검사에 기초하여 대량의 정보를 추출하기 위한 자동화 시스템을 인간 사용자에게 제공함으로써 개선점을 제공할 수 있다. 실시예는 식별된 구조를 사용하여, 적은 프로세싱 자원을 사용하여 정보를 수집함으로써 자동화된 시스템의 효율성을 더욱 높일 수 있다.
다양한 실시예에 대해 상세하게 언급되며, 그 예는 첨부 도면에 도시된다. 다음의 상세한 설명에서, 복수의 특정 세부 사항이 본 개시 및 설명된 실시예의 완전한 이해를 제공하기 위해 설명된다. 그러나 본 개시는 이러한 특정 세부 사항 없이도 실시될 수 있다. 다른 예에서, 공지된 방법, 절차, 컴포넌트 및 회로는 실시예의 양상을 불필요하게 불명료하게 되지 않도록 상세히 설명하지 않았다.
실시예는 가능한 변화를 단순히 예시한다. 명시적으로 달리 언급하지 않는 한, 컴포넌트와 기능은 선택 사항이고, 조합되거나 세분화될 수 있으며, 동작은 순차적으로 변경되거나 조합되거나 또는 세분화될 수 있다. 이하의 설명에서, 설명의 목적으로, 예시적인 실시예의 완전한 이해를 제공하기 위해 복수의 특정 세부 사항이 제시된다. 그러나 본 기술에서 통상의 지식을 가진 자에게는 본 발명이 이러한 특정 세부 사항 없이도 실시될 수 있다는 것이 자명할 것이다.
도 1은 제 1 제품 검색 결과 통신정보(product search result communication)(100)의 예를 도시한다. 제 1 제품 검색 결과 통신정보(100)는 URL, 제품 요소, 포맷팅 구조, 광고 정보, 컬럼 타이틀 및 임의의 다른 정보를 포함할 수 있다. 이러한 정보는 특히 사진, 삽화, 제품 문서에 대한 링크, 및 특히 예컨대 제 1 제품 검색 결과 통신정보(100)에 포함될 수 있는 제품 요소의 예와 같은 제품의 부가적인 세부 사항을 포함할 수 있다. 도 1에 도시된 바와 같이, 제 1 제품 검색 결과 통신정보(100)는 복수의 제품 요소(110)를 포함한다. 복수의 제품 요소(110)의 제품 가격 요소(118)가 구체적으로 식별된다. 제 1 제품 요소(112) 및 제 2 제품 요소(114)는 또한 특별하게 식별되고, 복수의 제품 요소(110)의 일부이다. 제품 요소(110)는 제 1 제품 검색 결과 통신정보(100)를 초래한 검색 요청에 대한 특정 응답과 연관된 임의의 정보를 포함할 수 있다. 예를 들어, 검색 요청 또는 검색 질의가 제 1 제품 검색 결과 통신정보(100)를 초래한 자동차에 대해 개시되었다면, 검색에 응답하여 식별된 특정 자동차와 관련된 임의의 정보는 제품 요소(110)가 될 것이다. 다른 구현은 헤더 정보, 검색 엔진 또는 판매 포털과 관련된 브랜딩 색상 및 기호, 크기 정보 또는 다른 선택적인 정보와 같은 다른 정보를 포함할 수 있다.
제 1 제품 검색 결과 통신정보(100)는 시스템의 출력 디스플레이 상에 디스플레이될 수 있다. 시스템에 의한 제 1 제품 검색 결과 통신정보의 수신에 응답하여 생성되고 디스플레이되는 임의의 사용자 인터페이스 요소 또는 웹 페이지의 다른 양상은 제 1 제품 검색 결과 통신정보(100)와 관련된 요소로 간주된다.
도 2는 제 1 제품 검색 결과 통신정보(100)의 추가 양상을 도시한다. 이것은 제품 요소(110)를 포함한다. 제품 요소(110)는 복수의 상이한 콘텐츠 정보 요소를 포함한다. 특정 실시예에서, 제품 요소(110)는 제 1 제품 검색 결과 통신정보(100) 내의 모든 콘텐츠 정보를 포함할 수 있다. 다른 실시예에서, 제 1 제품 검색 결과 통신정보(100) 내의 콘텐츠 정보 요소의 일부만이 제품 요소(110)에 포함된다. 제품 요소(111), 제품 요소(113), 제품 가격 요소(118), 제 1 제품 요소(112) 및 제 2 제품 요소(114)를 포함하는 복수의 제품 요소(110)가 특히 식별된다. 다양한 실시예에서, 제품 요소(111 내지 118)에 제공된 제품 정보는 제품 사진, 제품 이름, 제품 설명 및 임의의 다른 제품 정보를 포함할 수 있다. 도 2는 제 1 제품 검색 결과 통신정보(100)의 일부인 반복된 구조를 또한 도시한다. 도 2에 도시된 바와 같이, 반복된 구조는 또한 내부의 구조적 요소를 포함한다. 최상위 레벨의 반복된 구조는 위치 노드(120)로서 도시된다. 이러한 구조는 위치 노드(120)(1-3)로서 도 2에서 3번 반복된다. 본 명세서에 설명된 다양한 실시예에서, 이러한 최상위 레벨 반복된 구조는 반복된 구조의 최상위 레벨 노드, 최상위 위치 노드 또는 최상위 레벨 위치라고 지칭할 수 있다. 특정 통신정보는 단일의 최상위 노드를 가질 수 있다. 다른 실시예는 복수의 상이한 반복된 구조를 포함할 수 있고, 따라서 실시예는 복수의 최상위 레벨 노드를 포함할 수 있다. 특정 구현에서, 최상위 레벨 노드에서는 주어진 정보 집합 중 가장 크게 반복하는 구조의 "컨테이너" 또는 "구조"를 서술할 수 있다. 따라서, 복수의 최상위 레벨 노드를 갖는 실시예는 상이한 반복하는 정보 집합을 갖는 복수의 상이한 구조를 가질 수 있다.
도 2의 각각의 위치 노드(120)는 위치 노드(120)의 구조 내부에 있는 부가 위치 노드를 포함한다. 이들 부가 위치 노드는 위치 노드(122), 위치 노드(124), 위치 노드(126) 및 위치 노드(128)로서 도시된다. 또한, 위치 노드(128)는 위치 노드(126)의 내부에 있는 것으로 더 구조화된다. 이들 각각의 위치 노드(122, 124, 126, 및 128)는 각각의 위치 노드(120)의 내부에서 반복된다. 그러므로 위치 노드(120(3))는 위치 노드(122(3), 126(3), 및 128(3))를 포함한다. 내부 구조의 일부로 부가 노드를 포함하지 않는 위치 노드는 반복된 구조의 하단 레벨 노드, 하단 위치 노드 또는 하단 레벨 위치라고 지칭될 수 있다. 도 2에서, 위치 노드(122, 124 및 128)는 최하위 레벨 노드이다.
제 1 제품 검색 결과 통신정보(100)의 실제 내용은 제품 요소(110)를 포함한다. 반복 구조가 식별됨에 따라, 제품 요소(110)의 각각의 제품 요소는 위치 노드와 연관될 수 있다. 도 2에 도시된 바와 같이, 제품 가격 요소(118)는 위치 노드(128(1))와 연관되고, 제 1 제품 요소(112)는 위치 노드(122(2))와 연관되고, 제 2 제품 요소(114)는 위치 노드(124(3))와 연관된다. 추가 제품 요소는 다른 위치 노드와 유사하게 연관될 것이다.
도 3은 제 1 제품 검색 결과 통신정보(100)로부터 식별되는 반복된 구조(300)를 도시한다. 이러한 반복된 구조는 최상위 위치 노드(120), 위치 노드(122), 위치 노드(124), 위치 노드(126) 및 위치 노드(128)를 포함한다. 다양한 실시예에서, 시스템에 의해 수신된 통신정보는 반복된 구조의 임의의 복잡성을 포함할 수 있다. 도 3의 실시예는 최상위 레벨 위치 노드(120)가 아래로 2 레벨의 복잡도를 갖는 것을 도시하지만, 다른 실시예에서는 임의의 개수의 레벨이 포함될 수 있다. 위치 노드(120) 아래의 제 1 레벨은 위치 노드(122, 124 및 126)를 포함한다. 위치 노드(120) 아래의 제 2 레벨은 위치 노드(128)를 포함한다. 가격책정 부분(pricing division)은 여기에서 규칙적으로 식별되는 주요 정보일 수 있는 제품 정보의 한 유형으로 특별하게 호칭될 수 있지만, 가격책정 위치 노드(pricing position node)는 일부 실시예에서 다른 위치 노드와 동일하게 취급될 수 있다. 추가 실시예는 제 3 레벨, 제 4 레벨, 또는 임의의 개수의 레벨의 위치 노드를 포함할 수 있다. 유사하게, 레벨은 그 레벨 내에서 임의의 개수의 위치 노드를 포함할 수 있다.
또한, 실시예는 복수의 최상위 레벨 노드를 포함하는 통신정보를 감안할 수 있다. 예를 들어, 통신정보가 제 1 반복 구조 및 제 2 반복된 구조를 포함한다면, 각각의 반복된 구조는 자신의 최상위 레벨 위치 노드를 포함할 것이다.
특정 실시예에서, 최저 레벨 노드만이 텍스트 또는 다른 그러한 정보를 포함하는 요소와 연관될 것이다. 이러한 실시예에서, 최하위 레벨 노드 위에 있는 노드는 최하위 레벨 노드 사이의 상대 위치 또는 관계와 연관될 것이다. 예를 들어, 도 2에서, 위치 노드(126)는 하위 레벨 위치 노드(128)와 연관된 가격책정 특성을 간단히 식별한다. 이와 유사하게 위치 노드(120)은 낮은 레벨 위치 노드(122, 124, 및 126) 사이의 관계를 식별한다. 위치 노드(120)에서 (128)까지는 제 1 제품 검색 결과 통신정보(100)의 반복된 구조를 도시한다. 다른 실시예에서 임의의 위치 노드는 정보 콘텐츠 및 다른 위치 노드와의 연관성을 모두 포함할 수 있다. 예를 들어, 특정 실시예에서, 위치 노드(126)는 라벨(label) 또는 다른 정보를 포함할 수 있다.
본 명세서에서 언급된 라벨은 수신된 통신정보에서 구조의 일부로서 반복되는 요소이지만, 동일한 위치 노드와 관련된 상이한 제품 요소 사이에서는 바뀌지 않는다.
본 명세서에 언급된 정보 콘텐츠는 텍스트, 그림, 비디오, 그래픽 요소 또는 수신된 통신정보의 임의의 다른 정보 요소를 서술한다. 정보 콘텐츠는 검색 질의에 응답하여 통신정보 응답을 시작시킨 임의의 콘텐츠 정보를 포함한다.
본 명세서에 설명된 위치 정보는 위치 노드를 정의하는데 사용될 수 있는 식별 가능한 반복된 구조를 정의하거나 구성하는 제품 요소 사이의 관계에 관한 정보를 지칭한다. 이것은 제 1 제품 검색 결과 통신정보(100)와 같은, 통신정보의 수신에 응답하여 제공되는 출력 디스플레이상의 제품 요소의 물리적 위치를 포함한다. 이것은 또한 하이퍼텍스트 마크업 언어(hypertext markup language, HTML) 텍스트, 확장가능 마크업 언어(extensible markup language XML) 텍스트 또는 수신된 통신정보 내의 제품 요소 사이의 관계에 관한 정보를 제공하는 수신된 통신정보 내의 다른 정보 또는 메타데이터에 의해 식별되는 관계와 같은 수신된 통신정보 내에서 정의된 관계를 지칭할 수 있다.
도 4는 일 실시예에 따라 통신정보로부터 유사한 요소를 추출하는 방법(400)을 도시한다. 도 4의 실시예의 다양한 구현에서, 본 방법은 도 5의 디바이스(500), 도 6의 서버(602), 또는 도 8의 머신(800)과 같은 컴퓨팅 디바이스에 의해 수행될 수 있다. 다른 실시예에서, 디바이스의 시스템이 사용되거나 또는 그러한 다른 임의의 디바이스, 가상 디바이스, 또는 디바이스의 시스템이 도 4의 방법의 임의의 일부에 대해 사용될 수 있다.
도 4의 방법(400)은, 동작(410)에서, 디바이스의 하나 이상의 프로세서에 연결된 네트워크 인터페이스에서, 제 1 제품 검색 결과 통신정보를 수신하는 것으로 시작한다. 이것은 사용자에 의해 디바이스에 입력되고 콘텐츠 서버에 전달된 검색 질의에 대한 응답일 수 있다. 이것은 디바이스에 의해 자동으로 발생되어 콘텐츠 서버로 보내진 검색 질의에 대한 응답일 수도 있다. 이것은 또한 디바이스에 의해 만들어진 시작용 질의 없이 네트워크 콘텐츠 소스로부터 디바이스에 제공된 정보일 수 있다.
단계(420)에서, 방법은 디바이스에 의해, 반복된 제품 정보 구조를 식별하기 위해 제 1 제품 검색 결과 통신정보를 분석하는 단계로 진행한다. 반복된 제품 정보 구조는 도 3의 반복 구조(300)와 유사할 수 있다. 구조의 각각의 반복은 상이한 단일 제품 또는 제품 세트에 관한 정보를 포함하며, 제 1 제품 검색 결과 통신정보의 복수의 제품 검색 결과의 일부인 단일의 검색 결과로 간주될 수 있다. 제품 검색 결과 통신정보는 임의의 포맷으로 나열된 임의의 개수의 개별 검색 결과를 포함할 수 있으며, 이때 검색 결과의 적어도 일부는 하나 이상의 반복된 구조를 공유한다. 복수의 제품 검색 결과의 각각의 제품 검색 결과는 도 2의 제품 요소(110)와 같은 하나 이상의 제품 요소를 포함한다. 또한, 각각의 제품 요소는 반복된 제품 정보 구조 내의 위치 또는 위치 노드를 갖는다. 다시 말해서, 첫 번째 제품 검색 결과에는 제품 리스트가 포함된다. 제품은 상품, 서비스, 상품 및/또는 서비스 그룹 또는 임의의 다른 검색 결과 리스트일 수 있다. 제품 리스트에 나열된 각각의 제품은 그림, 텍스트 설명, 제목 설명, 가격 또는 임의의 다른 이와 같은 콘텐츠 정보와 같은 연관된 콘텐츠 정보를 가질 수 있다. 각 제품과 관련된 콘텐츠 정보는 제품 리스트 내의 제품 중 적어도 부분집합이 콘텐츠 정보에 대해 동일한 구조를 갖는 특별한 방식으로 구성될 수 있다.
단계(430)에서, 방법은 타겟 요소 입력을 수신하는 단계를 포함한다. 타겟 요소 입력은 도 6의 키보드(628)와 같은 입력 소스로부터의 사용자 입력일 수 있다. 다른 실시예에서, 타깃 입력은 터치 스크린, 카메라, 마우스, 스피커 또는 임의의 다른 센서와 같은 임의의 다른 사용자 입력 디바이스로부터 수신될 수 있다. 다른 실시예에서, 타겟 요소 입력은 시스템의 동작의 일부로서 디바이스 메모리 또는 요소 선택 모듈로부터 수신된 미리 결정된 자동 입력일 수 있다. 타겟 요소 입력은 제 1 제품 검색 결과 통신정보의 제 1 제품 요소를 식별하거나 또는 식별하는데 사용된다.
동작(440)은 반복된 제품 정보 구조를 분석하여 제 1 제품 요소와 관련된 반복된 제품 정보 구조 내의 제 1 위치를 식별하는 단계를 포함한다. 따라서, 타겟 요소 입력은 제 1 제품 요소를 식별하고, 동작(440)은 식별된 제 1 제품 요소가 제 1 제품 검색 결과 통신정보의 일부인 반복된 구조 내에 위치되거나 구조화되는 것을 식별하는 단계를 포함한다.
동작(450)은 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조의 제 1 위치에 있는 제 1 제품 검색 결과 통신정보의 각각의 제품 요소를 식별하는 단계를 포함한다. 예를 들어, 도 1 내지 도 3에서 설명된 실시예에서, 타겟 요소 입력이 제 1 제품 요소(112)를 식별한다면, 동작(450)은 제 1 제품 요소(112)와 연관된 위치를 분석하여 위치 노드(122)를 제 1 제품 요소(112)와 연관시키는 것을 포함한다. 분석은 추가로 위치 노드(122)와 연관되어 있는 것으로서 제품 요소(111 및 113)를 식별하여, 제품 요소(111, 112 및 113)가 도 2의 반복된 구조(300)의 식별된 위치에 있는 제 1 제품 검색 결과 통신정보(100)의 모든 제품 요소와 같이 식별되도록 한다. 예를 들어, 다른 실시예가 반복된 구조(300)를 갖는 1000개의 제품 리스트를 포함한다면, 연관된 위치 노드(122)로부터의 모든 1000개의 연관된 제품 요소가 분석에 의해 식별될 것이다.
특정 실시예에서, 제 1 제품 검색 결과 통신정보는 계단식 스타일 시트를 포함할 수 있다. 이러한 실시예에서, 통신정보 내의 요소는 계단식 스타일 시트와 연관될 수 있다. 타겟 요소 입력이 수신될 때, 반복하는 패턴은 계단식 스타일 시트의 정보를 사용하여 식별될 수 있으며, 노드 위치 또는 타겟 요소 입력으로부터 식별된 요소를 갖는 그룹을 공유하는 각각의 요소는 계단식 스타일 시트로부터의 정보를 사용하여 도출될 수 있다.
특정 실시예에서, 모든 제품 리스트는 그래픽 사용자 인터페이스의 단일 페이지 상에 제공되지 않을 수도 있거나, 아니면 응답 통신정보를 초래한 단일의 질의와 관련된 모든 제품 리스트는 단일 제품 검색 응답 통신정보에서 전송되지 않을 수도 있다. 이러한 실시예에서, 반복하는 구조의 분석은 또한 연속 리스트 지시자(continuing list indicator)를 식별할 수 있다. 이러한 연속 리스트 지시자는 그래픽 사용자 인터페이스의 선택 가능한 입력, 통신정보 내의 정보, 또는 일부 다른 그러한 지시자일 수 있다. 다양한 실시예는 상이한 방식으로 그러한 지시자를 처리할 수 있다. 특정 실시예는 그래픽 사용자 인터페이스에서 통신정보를 디스플레이할 때 추가 정보를 자동으로 요청할 수 있다. 특정 실시예는 먼저 타겟 요소 입력을 수신하고, 현재 제시된 제품 정보의 구조를 분석한 다음, 연속 리스트 지시자를 사용하여 추가 정보를 요청하는 사용자로부터 승인을 요청할 수 있다. 다른 실시예에서, 연속 리스트 지시자를 사용하는 추가 정보의 요청은 자동으로 수행될 수 있다. 추가 제품 리스트의 자동 요청에 응답하여 연속 제품 검색 결과 통신정보가 수신될 수 있으며, 그 다음 연속 제품 검색 결과 통신정보로부터의 추가 제품 리스트가 분석되어 연속 제품 검색 결과 통신정보 내의 반복하는 구조를 식별할 수 있다. 또한, 연속 제품 검색 결과 통신정보는 그 자체가 제 2 연속 리스트 지시자를 포함할 수 있다. 다양한 실시예에서, 각각의 연속 제품 검색 결과 통신정보는 개별 타겟 요소 입력을 필요로 할 수 있다. 다른 실시예에서, 제 1 타겟 요소 입력은 각각의 연속 제품 검색 결과 통신정보에 대해 사용될 수 있다. 시스템은 마지막의 연속 검색 결과 통신정보가 연속 리스트 지시자를 포함하지 않을 때까지 제 1, 제 2, 제 3 등의 연속 검색 결과 통신정보를 자동으로 계속 요청할 수 있다. 다른 실시예에서, 연속 제품 검색 결과 통신정보의 제 1 요청은 사용자 인터페이스를 통해 제시된 사용자 확인을 요구할 수 있으며, 그런 다음 연속 제품 검색 결과 통신정보의 각각의 후속 요청이 자동으로 수행될 수 있다. 마지막 통신정보가 수신된 이후, 각각의 통신정보로부터 추출되는 모든 정보는 단일 레코드로 집합되고, 차후 분석을 위해 저장되고, 사용자에게 선택된 또는 미리 정해진 포맷으로 집합되어 제공되거나, 또는 집합되어 별도의 디바이스에 자동으로 전달될 수 있다. 예를 들어, 레코드는 텍스트 형식의 노드 리스트, 통신정보에서 식별된 반복된 구조의 그래픽 표현 및/또는 테이블의 각 제품과 관련된 하나 이상의 제품 요소를 가진 제품 테이블을 포함할 수 있다. 특정 실시예에서, 레코드는 제품명마다 하나의 열, 제품 설명마다 하나의 열 및 제품 가격마다 하나의 열을 갖는 스프레드 시트를 포함할 수 있으며, 각각의 열은 수신된 통신정보의 일부로서 식별된 반복 구조 내의 노드와 연관된다.
특정 실시예에서, 위치 노드는 제품 검색 결과 통신정보에서 특정 제품 리스트에 대비하여 비어 있을 수 있다. 이렇게 비어있는 제품 요소는 표준 0 또는 "빈(empty)" 값이 주어진 경우 무효(null) 제품 요소로 식별되거나 단계(460)에서 생성된 저장 레코드에서 제외될 수 있다.
동작(460)은 반복된 제품 정보 구조의 제 1 위치에 있는 제 1 제품 검색 결과 통신정보의 각각의 제품 요소의 리스트를 포함하는 제 1 레코드를 저장하는 단계를 포함한다. 이러한 레코드는 디바이스에 로컬로 저장되거나 원격 데이터베이스 또는 저장 디바이스에 전달될 수 있다.
도 4의 방법은 동작(410 내지 460)을 특정 순서로 설명하고 있지만, 특정 프로세스는 다른 순서로 수행될 수 있다는 것을 인식할 것이다. 예를 들어, 특정 실시예에서, 통신정보가 분석되기 전(동작 420)에 타겟 요소가 수신될 수 있다(동작 430). 특정 실시예에서, 타겟 요소 입력의 수신은 트리거로서 이용되어, 통신정보의 분석을 시작할 수 있다. 다른 실시예 및 다른 프로세스는 상이한 실시예의 구현에 따라 상이한 순서로 유사하게 일어날 수 있다. 다른 실시예에서, 제 1 제품 검색 결과 통신정보의 분석을 개시시키는 개별 입력은 타깃 요소 입력으로 또는 타깃 요소 입력이 수신된 후에 수신될 수 있다. 다른 실시예에서, 반복된 제품 정보 구조를 생성하기 위한 분석은 동작(410)에서 제 1 제품 검색 결과 통신정보의 수신에 응답하여 자동으로 개시될 수 있다. 또 다른 실시예에서, 사용자 입력 또는 별개의 자동 트리거는 동작(440) 이전의 임의의 시간에서 반복된 제품 정보 구조를 식별하기 위한 분석을 개시하는데 사용될 수 있다.
도 5는 본 명세서에 기술된 특정 실시예에 따라 유사한 그룹 요소를 추출하기 위한 시스템, 디바이스 및 방법의 일부로서 사용될 수 있는 디바이스(500)를 도시한다. 디바이스(500)는 네트워크 입력/출력(input/output, I/O) 모듈(510), 사용자 입력/출력(I/O) 모듈(520), 데이터 관리 모듈(530), 메모리 모듈(540), 구조 분석 모듈(550), 및 요소 선택 및 필터링 모듈(560)을 포함한다. 네트워크 입력/출력 모듈(510)은 네트워크 콘텐츠 소스로부터 통신정보를 수신하는데 사용될 수 있는 임의의 네트워크 인터페이스 디바이스, 시스템 또는 컴포넌트를 포함할 수 있다. 이것은 도 6의 통신 인터페이스(620)와 도 8의 네트워크 인터페이스 디바이스(820) 또는 임의의 다른 유선 또는 무선 네트워크 통신 시스템을 포함할 수 있다.
사용자 입/출력 모듈(520)은 키보드(628), 영숫자 입력 디바이스(812) 또는 커서 제어 디바이스(814)와 같은 입력 요소를 포함한다. 특정 실시예에서, 사용자 입력은 네트워크 입력/출력 모듈(510)을 통해 수신될 수 있다. 사용자 입력/출력 모듈(520)은 또한 카메라 입력, 스피커 입력, 터치 스크린 또는 임의의 다른 그러한 사용자 입력 디바이스와 같은 다른 디바이스를 포함할 수 있다. 사용자 입력/출력 모듈(520)은 또한 전술한 제 1 제품 검색 결과 통신정보와 같은 수신된 통신정보부터 도출되는 웹 페이지를 출력하는데 사용될 수 있는 스크린과 같은 출력 디바이스를 포함할 수 있다. 출력 디바이스는 다중 디스플레이, 스피커 또는 여타 출력 디바이스를 포함할 수 있다.
데이터 관리 모듈(530)은 버스(808), 통신 버스(630) 또는 임의의 다른 통신 경로를 포함한다. 데이터 관리 모듈(530)은 또한 중앙 처리 유닛(622), 프로세서(802) 또는 본 명세서에 기술된 실시예에 따라 유사 그룹 요소의 추출을 구현하는데 사용될 수 있는 임의의 다른 일반 또는 특수 목적 프로세싱 회로와 같은 하나 이상의 프로세서를 포함할 수 있다.
메모리 모듈(540)은 유사 그룹 요소를 추출하는 양상을 구현하기 위해 디바이스(500)에 의해 사용될 수 있는 정보를 저장하기 위한 임의의 메모리 디바이스를 포함한다. 메모리 모듈에는 제품 검색 결과 통신정보의 일부로서 수신된 정보가 포함될 수 있다. 메모리 모듈에는 제품 검색 결과 통신정보를 응답으로 시작시킨 검색 질의의 양상이 포함될 수 있다. 메모리 모듈에는 구조 분석 모듈(550) 및 요소 선택 및 필터링 모듈(560)에 의한 구조 분석 및 요소 선택 및 필터링을 수행하는데 사용될 수 있는 다양한 시스템 및 모듈의 양상이 포함될 수도 있다. 특정 실시예에서, 구조 분석 모듈(550) 및 요소 선택 및 필터링 모듈(560)은 전술한 방법의 소정 동작을 수행할 수 있다. 이에 대해서는 아래에 자세히 논의된다. 이 모듈에는 템플릿, 지침 또는 시스템에서 사용할 수 있는 임의의 다른 정보가 포함될 수 있다. 메모리 모듈(540)은 또한 본 명세서에 설명된 유사 그룹 요소를 추출하기 위한 시스템 및 방법에 의해 생성된 출력 레코드를 저장할 수 있다. 그러한 레코드는 추출된 요소 이외에 추출된 데이터 요소를 기술하는 메타 데이터 구조 및 콘텐츠를 포함할 수 있다. 이러한 레코드는 데이터베이스 형식 또는 스프레드 시트 형식과 같은 특정 출력 시스템에 대한 형식을 포함할 수도 있다.
구조 분석 모듈(550)은 수신된 통신정보의 구조를 분석하기 위한 시스템 또는 모듈로서 임의의 하드웨어, 소프트웨어, 펌웨어 또는 이들의 조합을 포함한다. 예를 들어, 구조 분석 모듈(550)은 도 1 및 도 2에서 설명된 제 1 제품 검색 결과 통신정보를 처리하여 도 3의 반복 구조(300)를 식별할 수 있다.
구조 분석 모듈(550)은 복수의 상이한 방식으로 이러한 분석을 수행할 수 있다. 특정 실시예에서, HTML 파서(parser)는 제 1 제품 검색 결과 통신정보와 같은 수신된 통신정보에서 반복 구조를 식별하는데 사용될 수 있다. 이러한 HTML 파서는 통신정보의 일부로서 수신된 HTML 내의 템플릿 또는 패턴을 식별할 수 있고, 패턴을 반복 구조(300)와 같은 구조로 분류할 수 있다. 다른 실시예에서, 그와 같은 다른 파서는 패턴을 식별하기 위해 수신된 통신정보의 임의의 포맷으로 사용될 수 있다. 다른 실시예에서, 문서 객체 모델 파싱은 문서 객체 모델 트리를 생성하기 위해 수행될 수 있으며, 패턴은 문서 객체 모델 트리 내의 트리 구조를 반복함으로써 식별될 수 있다. 이러한 실시예는 분석을 구현하기 위한 파서의 일부로서 제어 시스템을 갖는 브라우저를 사용할 수 있다. 또 다른 실시예에서, 최적화된 검색 또는 인식 시스템은 수신된 통신정보 내에서 반복하는 구조를 식별하기 위해 메타 데이터의 정규 표현 매칭(regular expression matching) 또는 분석을 사용할 수 있다. 분석될 수신된 통신정보의 양상이 알려졌거나 부분적으로 알려진 실시예에서, 전술한 임의의 분석 방법의 최적화된 템플릿 또는 버전은 수신된 통신정보의 예상되거나 알려진 양상에 맞추어질 수 있다.
또한, 특정 실시예는 수신된 통신정보 내의 구조를 식별하기 위하여 출력 디스플레이 및 관련 사용자 입력을 인터페이스 리핑(interface ripping), 사용자 인터페이스 스크래핑(user interface scraping) 또는 분석을 사용할 수 있다. 예를 들어, 제 1 제품 검색 결과 통신정보(100)와 같은 통신정보가 수신되면, 도 1에 도시된 바와 같이 출력 스크린상에 표시될 수 있다. 특정 실시예에서, 도 1에 도시된 디스플레이와 통합된 사용자 인터페이스는 사용자 입력을 받아들여 반복된 구조의 하나 이상의 위치 노드를 식별할 수 있다.
다른 실시예에서, 수신된 통신정보는 출력에 디스플레이하기 위해 렌더링될 수 있으며, 컴퓨터 비전 시스템 또는 그래픽 분석 프로그램은 렌더링된 출력을 분석하여 패턴을 식별할 수 있다. 그런 다음, 패턴은 수신된 통신정보의 제품 요소와 연관되어 반복하는 패턴을 생성하거나 또는 반복하는 패턴은 렌더링된 출력으로부터 직접 식별되고 생성될 수 있다.
예를 들어, 특정 실시예에서, 출력 디스플레이는 제 1 제품 검색 결과 통신정보의 양상을 제공한다. 출력 디스플레이는 제 1 제품 검색 결과 통신정보의 제품 요소와 연관된 그래픽으로 표시된 선, 텍스트 및 사진을 포함할 수 있다. 출력 디스플레이와 관련된 정보는 데이터 구조에 저장될 수 있다. 이것은, 예를 들어, 데이터 구조의 하나의 그리드 요소를 출력 디스플레이의 픽셀과 연관시킬 수 있다. 구조 분석 모듈(550)은 하나 이상의 패턴 인식 알고리즘을 수행하여 데이터 구조에서 반복된 패턴을 식별하고 패턴을 제 1 제품 결과 통신정보로부터의 제품 요소와 연관시킬 수 있다. 식별된 패턴은 노드를 식별하는데 사용되고 반복된 구조의 일부로 사용될 수 있다.
디바이스(500)는 또한 요소 선택 및 필터링 모듈(560)을 포함한다. 요소 선택 및 필터링 모듈(560)은 수신된 통신정보 내의 요소를 식별하고 구조 분석 모듈(550)에 의해 식별된 구조에 기초하여 유사한 요소를 추출하기 위한 시스템 또는 모듈로서 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 조합으로 구성된다. 예를 들어, 요소 선택 및 필터링 모듈(560)은 자동화된 타겟 요소 입력을 수신할 수 있으며, 수신된 통신정보 내의 관련 요소를 식별하기 위해 자동화된 타겟 요소 입력을 사용할 수 있다. 이후, 요소 선택 및 필터링 모듈(560)은 구조 분석 모듈(550)에 의해 식별된 반복하는 구조 내의 관련 요소의 위치를 공유하는 통신정보 내의 각 요소를 추가로 식별할 수 있다.
일 실시예에서, 예를 들어, 요소 선택 및 필터링 모듈(560)은 출력 디스플레이 상의 사용자 인터페이스와 함께 동작하여, 도 1에 도시된 바와 같은 제 1 제품 검색 결과 통신정보(100)의 외관과 유사한 외관을 가질 수 있는 수신된 통신정보 출력을 생성한다. 시스템 사용자는 사용자 인터페이스를 사용하여 제 1 제품 검색 결과 통신정보(100)를 출력하는 사용자 인터페이스의 일부로서 디스플레이되는 픽셀 또는 픽셀 그룹을 선택할 수 있다. 요소 선택 및 필터링 모듈(560)은 타겟 요소 입력으로서 선택된 픽셀을 사용할 수 있으며, 픽셀 위치와 가장 근접한 제품 요소는 선택되거나 또는 연관된 요소로서 식별될 수 있다. 특정 실시예에서, 이러한 선택에 응답하여 사용자 인터페이스상에 그래픽 표시가 디스플레이될 수 있다. 사용자는 그러한 요소를 선택 해제하고 다른 요소를 선택하거나 추가 요소를 선택하는 옵션을 가질 수 있다.
요소가 선택된 요소로서 식별되면, 요소 선택 및 필터링 모듈(560)은 어떤 노드 구조가 선택된 요소와 연관되는지를 결정할 수 있다. 그 다음, 일단 선택된 요소와 연관된 노드 구조가 식별되면, 수신된 통신정보는 분석되어 수신된 통신정보 내의 반복된 구조의 모든 인스턴스를 식별하고, 선택된 요소와 관련된 노드 구조의 모든 인스턴스를 추가로 식별할 수 있다. 전술한 바와 유사하게 선택된 요소와 연관된 노드 구조의 모든 인스턴스가 식별될 때, 노드 구조의 각각의 인스턴스에 대해 요소가 강조 표시되거나 출력 디스플레이에 표시될 수 있다. 이러한 프로세스는 픽셀 또는 픽셀 그룹의 선택 후 바로 발생하도록 자동화될 수 있거나, 픽셀 선택 후 및 선택된 요소와 관련된 노드 구조의 각각의 인스턴스의 식별 이전에 사용자 확인에 좌우될 수 있다.
다른 실시예에서, 사용자 인터페이스가 픽셀을 선택하기 위해 사용자 입력을 받아들이기 보다는, 자동화된 시스템은 하나 이상의 템플릿을 사용하여 출력 디스플레이 또는 렌더링된 출력 데이터 스트림의 픽셀을 선택할 수 있다. 일 실시예에서, 예를 들어, 제품 가격 요소(118)와 같은 가격 요소를 식별하기 위해 "$"패턴이 사용될 수 있다.
또 다른 실시예에서, 사용자 인터페이스 또는 디스플레이로의 출력에 의존하기 보다는, 구조 분석 모듈(550)에 대해 전술한 임의의 매칭 기술이 사용되어 타겟 요소 입력을 생성하고 전술한 바와 같이 선택된 요소를 식별할 수 있다.
다른 실시예의 일례는 제 1 제품 검색 결과 통신정보를 수신하는 하나 이상의 프로세서에 연결된 네트워크 입력/출력 인터페이스를 포함한다. 이 실시예는 또한 네트워크 인터페이스로부터 제 1 제품 검색 결과 통신정보를 수신하고 제 1 제품 검색 결과 통신정보를 분석하여 제 1 제품 검색 결과 통신정보의 복수의 제품 검색 결과에 대해 반복된 제품 정보 구조를 식별하는 구조 분석 모듈을 포함하며, 복수의 제품 검색 결과의 각각의 제품 검색 결과는 복수의 제품 요소를 포함하고, 각각의 제품 요소는 반복된 제품 정보 구조 내의 위치를 갖는다. 이 실시예는 또한 제 1 제품 검색 결과 통신정보의 제 1 제품 요소를 식별하는 타겟 요소 입력을 수신하고, 반복된 제품 정보 구조를 분석하여 제 1 제품 요소와 관련된 반복된 제품 정보 구조 내의 제 1 위치를 식별하고, 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조의 제 1 위치에 있는 제 1 제품 검색 결과 통신정보의 각각의 제품 요소를 식별하는 요소 선택 및 필터링 모듈을 포함한다. 마지막으로, 이 실시예는 반복된 제품 정보 구조의 제 1 위치에 있는 제 1 제품 검색 결과 통신정보의 각각의 제품 요소의 리스트를 포함하는 제 1 레코드를 저장하는 메모리 모듈을 포함한다.
대안의 실시예는 본 명세서에 기술한 임의의 컴퓨팅 디바이스에서 전술한 요소들의 다양한 조합을 포함할 수 있다.
도 6은 본 발명의 일 실시예에 따른 시스템(600)을 도시하는 블록도이다. 예를 들어, 도 6의 구조 분석 및 요소 추출 모듈(646)은 도 5의 구조 분석 모듈(550) 및 요소 선택 및 필터링 모듈(560)의 조합일 수 있다. 그러므로 도 6의 서버(602)는 일부 실시예에서는 도 5의 디바이스(500)의 구현일 수 있다. 유사 그룹 요소를 추출하는 특정 구현을 위한 서버(602)의 동작의 일부로서, 서버(602)는 서버(690), 데이터베이스 디바이스(692) 또는 클라이언트 디바이스(694) 중 임의의 것으로부터 제 1 제품 검색 결과 통신정보(100)와 같은 통신정보를 수신할 수 있다. 서버(602)는 본 명세서에 기술한 방법 중 하나에 따라 통신정보를 분석할 수 있다.
시스템(600)은 서버(690), 데이터베이스 디바이스(692) 및 네트워크(634)(예를 들어, 인터넷)를 통해 서버(602)에 접속된 클라이언트 디바이스(694)를 포함하는 복수의 디바이스를 포함한다. 이들 디바이스 중 임의의 디바이스는 전체적으로 또는 부분적으로 도 8에 기술된 디바이스로서 구성될 수 있다. 특정 실시예에서, 서버(690), 데이터베이스 디바이스(692) 또는 클라이언트 디바이스(694)는 네트워크 통신정보의 일부로서 콘텐츠 정보를 서버(602)에 제공할 수 있는 콘텐츠 디바이스로서 기능을 할 수 있다.
도시된 바와 같은 서버(602)는 메모리(636)에 저장된 모듈, 프로그램 및/또는 명령어를 실행시키는 하나 이상의 중앙 처리 유닛(central processing unit, CPU)(622), 하나 이상의 통신 인터페이스(620), 메모리(636) 및 이들 컴포넌트를 상호 접속하기 위한 하나 이상의 통신 버스(630)를 포함한다. 통신 버스(630)는 선택적으로 시스템 컴포넌트 간의 통신신호를 상호 연결하고 제어하는 회로(예를 들어, 칩셋)를 포함한다. 서버(602)는 또한 대용량 저장디바이스(614)에 연결된 컨트롤러(612)를 포함한다. 서버(602)는 선택적으로 디스플레이 디바이스(626) 및 키 보드(628)을 포함하는 사용자 인터페이스(632)를 포함한다. 다른 실시예에서 서버(602)는 전술한 요소의 다른 조합을 포함할 수 있고 본 명세서에 기술하지 않은 추가 요소를 포함할 수 있다.
메모리(636)는 다이나믹 랜덤 액세스 메모리(dynamic random-access memory, DRAM), 정적 랜덤 액세스 메모리(static random-access memory, SRAM), 이배속 랜덤 액세스 메모리(double data rate random-access memory, DDR RAM) 또는 다른 랜덤 액세스 고체 상태 메모리 디바이스와 같은 고속 랜덤 액세스 메모리일 수 있고, 하나 이상의 자기 디스크 저장 디바이스, 광 디스크 저장 디바이스, 플래시 메모리 디바이스 또는 다른 비휘발성 고체 상태 저장 디바이스와 같은 비휘발성 메모리를 포함할 수 있다. 메모리(636)는 CPU(622)로부터 멀리 떨어진 하나 이상의 저장 디바이스를 선택적으로 포함할 수 있다. 메모리(636) 또는 메모리(636) 내의 비휘발성 메모리 디바이스는 비일시적 컴퓨터 판독가능 저장 매체를 포함한다. 일부 실시예에서, 메모리(636) 또는 메모리(636)의 컴퓨터 판독가능 저장 매체는 다음과 같은 프로그램, 모듈 및 데이터 구조 또는 이들의 서브셋, 즉, 오퍼레이팅 시스템(640), 파일 시스템(642), 네트워크 통신 모듈(644), 및 구조 분석 및 요소 추출 모듈(646)을 저장한다.
구조 분석 및 요소 추출 모듈(646)은 본 명세서에 기술한 것과 유사한 그룹 요소를 추출하기 위한 특정 실시예를 구현하기 위해 서버(602)의 일부로서 구현될 수 있다. 예를 들어, 도 5의 구조 분석 모듈(550) 및 요소 선택 및 필터링(560)은 구조 분석 및 요소 추출 모듈(646)의 일부로서 구현될 수 있다. 다른 실시예에서, 모듈은 복수의 디바이스에서 구현될 수 있으며, 클라이언트 디바이스(694)에서 사용자에게 인터페이스를 제공하는 서버(602)와 같은 서버를 갖는 서버 전용 아키텍처와, 부분적으로 클라이언트 디바이스(694)에서 및 부분적으로 서버(602)와 같은 서버에서 작동하는 모듈의 양태를 갖는 클라이언트 서버 아키텍처 또는 아무 연관 없는 서버(602)를 갖는 클라이언트 디바이스(694)와 같은 클라이언트 디바이스에서 작동하는 모듈의 전체를 갖는 클라이언트 애플리케이션으로서 구현될 수 있다.
오퍼레이팅 시스템(640)은 다양한 기본 시스템 서비스를 처리하고 하드웨어 종속적인 작업을 수행하기 위한 절차를 포함할 수 있다. 파일 시스템(642)은 전술한 반복 구조를 갖는 통신정보로부터 요소를 추출하여 생성된 레코드와 같은 다양한 프로그램에 의해 이용되는 다양한 파일을 저장하고 구성할 수 있다. 네트워크 통신 모듈(644)은 하나 이상의 통신 인터페이스(620)(예를 들어, 유선, 무선), 네트워크(634), 다른 광역 네트워크, 근거리 네트워크, 도시 영역 네트워크(metropolitan area network) 등을 통해 다양한 디바이스와 통신할 수 있다.
네트워크(634)는 머신, 데이터베이스, 및 디바이스(예를 들어, 서버(602) 및 클라이언트 디바이스(694)) 사이에서 통신을 가능하게 하는 임의의 네트워크일 수 있다. 따라서, 네트워크(634)는 유선 네트워크, 무선 네트워크(예를 들어, 이동 네트워크 또는 셀룰러 네트워크), 또는 이들의 임의의 적절한 조합일 수 있다. 네트워크(634)는 사설 네트워크, 공중 네트워크(예를 들어, 인터넷), 또는 이들의 임의의 적절한 조합을 구성하는 하나 이상의 부분을 포함할 수 있다. 따라서, 네트워크(634)는 근거리 네트워크(LAN), 광역 네트워크(WAN), 인터넷, 이동 전화 네트워크(예를 들어, 셀룰러 네트워크), 유선 전화 네트워크(예를 들어, 기존 전화 시스템(plain old telephone system, POTS) 네트워크), 무선 데이터 네트워크(예를 들어, Wi-Fi 네트워크 또는 WiMAX 네트워크), 또는 이들의 임의의 적절한 조합을 일원으로 하는 하나 이상의 부분을 포함할 수 있다. 네트워크(634)의 임의의 하나 이상의 부분은 전송 매체를 통해 정보를 통신할 수 있다. 본 명세서에서 사용된 "전송 매체"는 머신에 의한(예를 들어, 그러한 머신의 하나 이상의 프로세서에 의해) 실행을 위한 명령어를 통신할 수 있는 임의의 무형의(예를 들면 일시적인) 매체를 지칭하며, 디지털 또는 아날로그 통신 신호 또는 소프트웨어의 통신을 용이하게 하는 다른 무형의 매체를 포함할 수 있다.
서버(602), 서버(690), 데이터베이스 디바이스(692) 및 클라이언트 디바이스(694)는 각기 컴퓨터 시스템의 다양한 컴포넌트에 의해 전체적으로 또는 부분적으로 구현될 수 있다. 이러한 디바이스를 구성할 수 있는 컴퓨터 시스템의 부가적인 컴포넌트를 도시하는 특정 실시예는 아래에서 도 8과 관련하여 설명된다.
도 6에 도시된 머신, 데이터베이스 또는 디바이스 중 어느 하나는 표준화된 명령어 집합을 실행하는 프로세서로 작동되는 컴퓨터에서 실행될 수 있고, 소프트웨어(예를 들어, 하나 이상의 소프트웨어 모듈들)에 의해 수정(예를 들어, 구성 또는 프로그램)되어 머신, 데이터베이스, 또는 디바이스에 대해 본 명세서에 기술된 하나 이상의 기능을 수행하는 특수 목적 컴퓨터가 된다. 예를 들어, 본 명세서에 설명된 임의의 하나 이상의 방법론을 구현할 수 있는 컴퓨터 시스템은 도 3과 관련하여 하기에 기술된다. 그러한 특수 목적 컴퓨터는 통신정보로부터 유사한 요소를 추출하기 위한 본 명세서에 기술한 다양한 실시예를 구현하도록 하나 이상의 프로세서를 사용하여 임의의 개수의 모듈을 동작시킬 수 있다.
본 명세서에 사용된 바와 같이, "데이터베이스"는 데이터 저장 자원이고, 텍스트 파일, 테이블, 스프레드시트, 관계형 데이터베이스(예를 들어, 객체 관계형 데이터베이스), 트리플 스토어(triple store), 계층적 데이터 스토어 또는 이들의 임의의 적절한 조합으로 구조된 데이터를 저장할 수 있다. 또한, 도면에 도시된 임의의 둘 이상의 머신, 데이터베이스 또는 디바이스는 단일 머신으로 조합될 수 있으며, 임의의 단일 머신, 데이터베이스 또는 디바이스에 대해 본 명세서에서 기술된 기능은 복수의 머신, 데이터베이스 또는 디바이스 사이에서 세분화될 수 있다.
도 7은 특정 실시예에 따라 그룹 요소를 추출하는 방법을 도시한다. 도 7은 네트워크 인터페이스에서 제 1 제품 검색 결과 통신정보를 수신하는 동작(710)에서 시작한다. 이러한 통신정보는 제 1 제품 검색 결과 통신정보(100)와 유사할 수 있다. 이러한 통신정보는 디바이스에 의해 수신된 임의의 다른 통신정보 또는 응답 통신정보일 수 있다.
도 7의 동작(720)은 파서를 사용하여 제 1 제품 검색 결과 통신정보를 파싱하여 제 1 제품 검색 결과 통신정보 내의 반복된 텍스트 요소를 식별함으로써 반복된 제품 정보 구조를 식별하는 반복된 제품 정보 구조 식별 단계를 포함한다.
동작(730)은 그래픽 사용자 인터페이스의 적어도 제 1 픽셀을 선택하는 입력 디바이스로부터 사용자 입력을 수신하는 단계를 포함한다. 제 1 픽셀은 제 1 제품 검색 결과 통신정보의 일부로서 출력 디스플레이 모듈 및 그래픽 사용자 인터페이스 상에 표시된 바와 같은 제 1 제품 요소와 연관된다.
동작(740)은 반복된 제품 정보 구조를 분석하여 제 1 제품 요소와 연관된 반복된 제품 정보 구조 내의 제 1 위치를 식별하고, 반복된 제품 정보 구조 내의 제 1 위치와 연관된 제 1 제품 검색 결과 통신정보 내의 각각의 제품 요소를 식별하는 단계를 포함한다. 특정 실시예에서, 반복된 제품 정보 구조 내의 제 1 위치 는 도 2의 위치 노드(122(2))와 같은 최하위 레벨 위치 노드의 특정 인스턴스일 수 있다.
동작(750)은 그래픽 사용자 인터페이스의 일부로서 출력 디스플레이 모듈에 출력된 제품 요소 식별자 내의 반복된 제품 정보 구조 내의 제 1 위치와 연관된 제 1 제품 검색 결과 통신정보 내의 각 제품 요소를 그래픽으로 식별하는 단계를 포함한다.
특정 실시예에서, 각각의 제품 요소가 그래픽으로 식별될 때, 시스템 사용자는 자동 식별된 반복된 제품 정보 구조를 조정하기를 원할 수 있다. 예를 들어, 사용자가 별도의 요소로 식별된 요소를 생성된 레코드의 동일한 요소에 포함시키고자 할 때 이러한 상황이 발생할 수 있다. 이것은 사용자가 반복된 제품 정보 구조의 자동 식별에서 오류를 식별할 때도 발생할 수 있다. 특정 실시예에서, 출력된 제품 요소 식별자는 그래픽 사용자 인터페이스의 일부로서 기능을 할 수 있으며, 디스플레이된 제품 요소 식별자 출력을 조정하는 사용자 입력은 시스템에 의해 반복된 제품 정보 구조를 조정하는데 사용될 수 있다. 조정된 반복된 제품 정보 구조를 감안하여 시스템의 모든 정보가 업데이트될 수 있다. 특정 실시예에서, 특정 디바이스 모듈 또는 회로는 이러한 구조의 조정과 연관될 수 있다. 예를 들어, 도 5의 구조 분석 모듈(550)은 식별된 구조를 업데이트하라는 사용자 입력에 응답하여 요소 선택 및 필터링 모듈(560)로부터 표시를 수신할 수 있다. 추출된 요소를 업데이트하기 위한 보충적인 분석은 자동으로 수행되거나 사용자 입력에 응답하여 분석을 재 수행할 수 있다.
또한, 다양한 실시예는 많은 변형을 포함할 수 있다. 이러한 변형은 본 명세서에 기술한 모든 디바이스 또는 방법에 적용될 수 있다. 본 명세서에 기술된 예시적인 실시예는 총 망라한 것이 아니고, 예를 들어, 반복된 제품 정보 구조 내의 제 1 위치가 제 1 제품 검색 결과 통신정보에 의해 식별된 각각의 제품의 비용과 관련되는 특정 실시예가 수행될 수 있다.
식별된 제품 요소와 연관된 레코드의 자동 처리 및 생성은 최저 가격, 중간 가격, 최고 가격, 서술적 요소에서의 공통 키워드의 리스트, 또는 평균 서술 길이, 또는 다른 그와 같은 프로세싱을 포함할 수 있다.
구조 분석 모듈이 텍스트 파서를 포함하는 특정 실시예가 수행될 수 있는데, 이 실시예에서, 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조를 식별하는 단계는 텍스트 파서를 사용하여 제 1 제품 검색 결과 통신정보를 파싱하여 제 1 제품 검색 결과 통신정보 내에서 반복된 텍스트 요소를 식별하는 단계를 포함한다.
메모리 모듈이 한 세트의 요소 템플릿을 저장하는 특정 실시예가 수행될 수 있는데, 이 실시예에서, 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조를 식별하는 단계는 제 1 제품 검색 결과 통신정보 내의 반복된 텍스트 요소를 요소 템플릿 세트와 비교하고, 제 1 반복된 텍스트 요소가 요소 템플릿 세트의 제 1 요소 템플릿과 일치할 때 반복된 제품 정보 구조 내의 제 1 위치와 반복된 텍스트 요소의 제 1 반복된 텍스트 요소를 연관시키는 단계를 포함할 수 있다. 이러한 실시예에서는 또한 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조를 식별하는 단계가 제 1 제품 검색 결과 통신정보 내의 반복된 텍스트 요소를 세트의 요소 템플릿과 비교하는 단계와 반복된 텍스트 요소의 제 2 반복된 텍스트 요소를 제 1 반복된 텍스트 요소가 요소 템플릿 세트의 제 1 요소 템플릿과 일치할 때 반복된 제품 정보 구조 내의 제 2 위치와 연관시키는 단계를 포함하는 기능이 수행될 수 있다. 제 2 반복된 텍스트 요소가 반복된 제품 정보 구조의 제 1 반복된 텍스트 요소에 삽입되는 또 다른 실시예가 수행될 수 있다.
또 다른 실시예는 또한 제 1 제품 검색 결과 통신정보를 이용하여 제 1 제품 검색 결과 사이트를 디스플레이하는 출력 디스플레이 모듈을 포함할 수 있다. 이러한 실시예서는 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조를 식별하는 단계가 제 1 제품 검색 결과 웹 사이트의 일부로서 출력 디스플레이 모듈 상에 디스플레이될 때 각각의 요소의 기하학적 위치를 분석하고, 제 1 제품 검색 결과 통신정보에 의해 정의되고 출력 디스플레이 모듈 상에 표시된 바와 같은 제 1 제품 검색 결과 웹 사이트의 반복된 기하학적 패턴으로부터 반복된 제품 정보 구조를 식별하는 단계를 포함하는 기능이 수행될 수 있다.
또 다른 실시예는 프로세서에 결합된 사용자 입력 모듈을 포함할 수 있으며, 이 실시예에서 사용자 입력 모듈은 입력 디바이스 및 출력 디스플레이 모듈에 디스플레이된 그래픽 사용자 인터페이스를 포함한다. 이러한 실시예에서는 제 1 제품 검색 결과 통신정보를 분석하여 반복된 제품 정보 구조를 식별하는 단계가 입력 디바이스를 통해 하나 이상의 사용자 선택 및 반복된 제품 정보 구조의 일부로서 하나 이상의 반복된 제품 요소를 식별하는 그래픽 사용자 인터페이스를 수신하는 단계를 포함하는 기능을 대안적으로 또는 부가적으로 수행할 수 있다.
타겟 요소 입력이 메모리 모듈로부터 수신된 타겟 요소 템플릿을 포함하는 또 다른 실시예가 수행될 수 있다.
반복된 제품 정보 구조가 복수의 위치 노드를 포함하고, 복수의 위치 노드가 제 1 제품 검색 결과 통신정보 내의 제 1 반복 구조와 연관된 최상위 레벨 위치 노드를 포함하고, 최상위 레벨 위치 노드가 제 1 반복 구조 내에서 발생하는 제 2 반복 구조와 연관된 하나 이상의 최하위 레벨 위치 노드를 포함하는 또 다른 실시예가 수행될 수 있다.
도 8은 머신 판독 가능 매체(822)(예를 들어, 비일시적 머신 판독가능 매체, 머신 판독가능 저장 매체, 컴퓨터 판독가능 저장 매체, 또는 일시적인 신호 및 신호 자체를 제외한 이들의 임의의 적절한 조합)로부터 명령어(824)를 판독할 수 있고 본 명세서에서 논의된 하나 이상의 방법론을 전체적으로 또는 부분적으로 수행할 수 있는, 일부 실시예에 따른, 머신 컴포넌트를 예시하는 블록도이다. 구체적으로, 도 8은 머신(800)으로 하여금 본 명세서에 논의된 하나 이상의 임의의 방법론을 수행하게 하는 명령어(824)(예를 들어, 소프트웨어, 프로그램, 애플리케이션, 애플릿, 앱, 또는 다른 실행 가능한 코드)가 전체적 또는 부분적으로 실행될 수 있는 컴퓨터 시스템(예를 들어 컴퓨터)의 예시적 형태의 머신(800)을 도시한다. 서버(602)는 머신(800)의 한 예일 수 있다. 다양한 실시예에서, 머신(800)과 같은 머신은 다양한 클라이언트, 서버 및 도 5 및 도 6의 다른 디바이스 또는 본 명세서에 기재된 실시예를 구현하는데 사용될 수 있는 컴퓨팅 구조를 포함하는 본 명세서에서 언급된 임의의 컴퓨팅 디바이스를 구현하는데 사용될 수 있다.
대안의 실시예에서, 머신(800)은 스탠드얼론 디바이스로서 동작하거나 다른 머신에 접속(예를 들어, 네트워크화)될 수 있다. 네트워크 배치에서, 머신(800)은 서버-클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신의 자격으로 작동할 수 있거나 분산(예컨대, 피어-투-피어) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신(800)은 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(personal computer, PC), 태블릿 컴퓨터, 랩톱 컴퓨터, 넷북, 셀룰러 전화, 스마트폰, 셋톱 박스(set-top box, STB), 개인 휴대 정보 단말기(personal digital assistant, PDA), 웹 어플라이언스, 네트워크 라우터, 네트워크 스위치, 네트워크 브릿지, 또는 머신이 행할 행위를 지정하는 순차적 또는 다른 방법으로 명령어(824)를 실행할 수 있는 임의의 머신일 수 있다. 또한, 하나의 머신만이 도시되어 있지만, "머신"이라는 용어는 본 명세서에서 논의된 임의의 하나 이상의 방법론 전부 또는 일부를 수행하기 위해 개별적으로 또는 공동으로 명령어(824)를 실행하는 임의의 머신의 집합을 포함하는 것을 취급될 것이다.
머신(800)은 프로세서(802)(예를 들어, 중앙 처리 유닛(CPU), 그래픽 프로세싱 장치(graphics processing unit, GPU), 디지털 신호 프로세서(digital signal processor, DSP), 주문형 집적 회로(application specific integrated circuit, ASIC), 무선 주파수 집적 회로(radio-frequency integrated circuit, RFIC), 또는 이들의 임의의 적합한 조합), 메인 메모리(804), 및 스태틱 메모리(806)를 포함할 수 있으며, 이들은 버스(808)를 통해 서로 통신하도록 구성된다. 프로세서(802)는 프로세서(802)가 본 명세서에 기재된 하나 이상의 방법론을 전부 또는 부분적으로 수행하도록 구성될 수 있도록 몇몇 또는 전체 명령어(824)에 의해 일시적 또는 영구적으로 구성 가능한 마이크로회로를 포함할 수 있다. 예를 들어, 프로세서(802)의 하나 이상의 마이크로회로 집합은 본 명세서에 기재된 하나 이상의 모듈(예를 들어, 소프트웨어 모듈)을 실행하도록 구성될 수 있다.
머신(800)은 그래픽 디스플레이(810)(예를 들어, 플라즈마 디스플레이 패널(plasma display panel, PDP), 발광 다이오드(light emitting diode, LED) 디스플레이, 액정 디스플레이(liquid crystal display, LCD), 프로젝터, 음극선관(cathode ray tube, CRT) 또는 그래픽이나 비디오를 디스플레이할 수 있는 임의의 다른 디스플레이)를 또한 포함할 수 있다. 머신(800)는 또한 영숫자 입력 디바이스(812)(예컨대, 키보드 또는 키패드), 커서 제어 디바이스(814)(예를 들어, 마우스, 터치 패드, 트랙볼, 조이스틱, 모션 센서, 아이 트래킹 디바이스, 또는 다른 포인팅 도구), 저장 유닛(816), 오디오 생성 디바이스(818)(예를 들어, 사운드 카드, 증폭기, 스피커, 헤드폰 잭 또는 이들의 임의의 적절한 조합) 및 네트워크 인터페이스 디바이스(820)를 포함할 수 있다.
저장 유닛(816)은 본 명세서에 기재된 임의의 하나 이상의 방법론 또는 기능을 구현하는 명령어(824)가 저장되어 있는 머신 판독가능 매체(822)(예를 들어, 유형 및 비일시적 머신 판독가능 저장 매체)를 포함한다. 명령어(824)는 또한 메인 메모리(804), 프로세서(802) 내 (예를 들어, 프로세서의 캐시 메모리 내) 또는 두 곳에 머신(800)에 의한 그 실행 전 또는 실행 중에 완전히 또는 적어도 부분적으로 상주할 수 있다. 따라서 메인 메모리(804) 및 프로세서(802)는 머신 판독가능 매체(예를 들어, 유형 및 비일시적 머신 판독가능 매체)로 간주될 수 있다. 명령어(824)는 네트워크 인터페이스 디바이스(820)를 통해 네트워크(834)를 넘어 송신 또는 수신될 수 있다. 예를 들어, 네트워크 인터페이스 디바이스(820)는 임의의 하나 이상의 전송 프로토콜(예를 들어, 하이퍼텍스트 전송 프로토콜(hypertext transfer protocol, HTTP))을 사용하여 명령어(824)를 통신할 수 있다.
일부 실시예에서, 머신(800)은 스마트 폰 또는 태블릿 컴퓨터와 같은 휴대용 컴퓨팅 디바이스일 수 있고, 하나 이상의 추가 입력 컴포넌트(830)(예를 들어, 센서 또는 게이지)를 가질 수 있다. 이러한 입력 컴포넌트(830)의 예는 이미지 입력 컴포넌트(예를 들어, 하나 이상의 카메라), 오디오 입력 컴포넌트(예를 들어, 마이크로폰), 방향 입력 컴포넌트(예를 들어, 나침반), 위치 입력 컴포넌트(예를 들어, 글로벌 포지셔닝 시스템(global positioning system GPS) 수신기), 방위 컴포넌트(예를 들어, 자이로스코프), 움직임 검출 컴포넌트(예를 들어, 하나 이상의 가속도계), 고도 검출 컴포넌트(예를 들어, 고도계), 및 가스 검출 컴포넌트(예를 들어, 가스 센서)를 포함한다. 이러한 입력 컴포넌트 중 하나 이상에 의해 수집된 입력은 본 명세서에 기재된 모듈 중 임의의 하나에 의해 액세스 가능하고 사용 가능할 수 있다.
본 명세서에 사용된 바와 같이 "메모리"라는 용어는 데이터를 일시적 또는 영구적으로 저장할 수 있는 머신 판독가능 매체를 지칭하며, 이것으로 제한되는 것은 아니지만 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 버퍼 메모리, 플래시 메모리 및 캐시 메모리를 포함하는 것으로 취급될 수 있다. 예시적인 실시예에서 머신 판독가능 매체(822)가 단일 매체인 것으로 도시되지만, “머신 판독가능 매체”라는 용어는 명령어(824)를 저장할 수 있는 단일 매체 또는 다중 매체(예를 들어, 중앙 집중식 또는 분산식 데이터 베이스, 또는 연관된 캐시 및 서버)를 포함하는 것으로 취급되어야 한다. "머신 판독 가능 매체"라는 용어는 머신(800)의 하나 이상의 프로세서(예를 들어, 프로세서(802))에 의해 실행될 때, 명령어(824)가 머신(800)로 하여금 본 명세서에 기재된 하나 이상의 방법론을 전부 또는 부분적으로 실행하게 하는, 머신(800)에 의해 실행을 위한 명령어(824)를 저장할 수 있는 임의의 매체 또는 여러 매체의 조합을 포함하는 것으로 취급되어야 한다. 따라서, "머신 판독 가능 매체"는 단일의 저장 장치 또는 디바이스뿐만 아니라, 복수의 저장 장치 또는 디바이스를 포함하는 클라우드 기반 저장 시스템 또는 저장 네트워크를 지칭한다. 따라서 "머신 판독 가능 매체"라는 용어는 이것으로 제한되는 것은 아니지만, 고체 메모리, 광학 매체, 자기 매체 또는 이들의 임의의 적합한 조합의 형태로 된 하나 이상의 유형의 (예를 들어, 비일시적인) 데이터 저장소를 포함하는 것으로 취급될 것이다. 머신 판독가능 매체는 머신이 방법을 실행하도록 제어하는 머신 판독가능 명령어를 전달하는 임의의 매체를 포함할 수 있다. 일 실시예에서, 머신 판독가능 매체는 명령어를 전달하는 전송 매체 또는 신호를 포함한다.
본 명세서 전반에 걸쳐, 복수의 인스턴스는 컴포넌트, 동작, 또는 단일 인스턴스로서 설명되는 구조를 구현할 수 있다. 하나 이상의 방법의 개개의 동작이 개별적인 동작으로 도시되고 기재되지만, 개개의 동작 중 하나 이상은 동시에 수행될 수 있으며, 반드시 동작이 도시된 순서대로 수행될 것을 요구하는 것은 아니다. 예시적 구성에서 별도의 컴포넌트로 제공되는 구조 및 기능은 조합된 구조 또는 컴포넌트로서 구현될 수 있다. 유사하게, 단일 컴포넌트로서 제공되는 구조 및 기능은 개별 컴포넌트로서 구현될 수 있다. 이와 같은 변형 및 다른 변형, 수정, 추가 및 개선은 본 명세서의 주제의 범위 내에 속한다.
특정 실시예는 본 명세서에서 로직 또는 복수의 컴포넌트, 모듈 또는 메커니즘을 포함하는 것으로 기술된다. 모듈은 소프트웨어 모듈(예를 들어, 머신 판독가능 매체 또는 전송 매체상에 저장되거나 구현된 코드), 하드웨어 모듈, 또는 이들의 임의의 적합한 조합을 구성할 수 있다. "하드웨어 모듈"은 특정 동작을 수행할 수 있는 유형의 (예를 들어, 비일시적인) 유닛이며, 특정 물리적인 방식으로 구성되거나 배열될 수 있다. 다양한 예시적인 실시예에서, 하나 이상의 컴퓨터 시스템(예를 들어, 스탠드얼론 컴퓨터 시스템, 클라이언트 컴퓨터 시스템, 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템(예를 들어, 프로세서 또는 프로세서 그룹)의 하나 이상의 하드웨어 모듈은, 본 명세서에 설명된 바와 같은 특정 동작을 수행하도록 동작하는 하드웨어 모듈로서 소프트웨어(예를 들어, 애플리케이션 또는 애플리케이션 부분)로 구성될 수 있다.
일부 실시예에서, 하드웨어 모듈은 기계적으로, 전자적으로, 또는 이들의 임의의 적절한 조합으로 구현될 수 있다. 예를 들어, 하드웨어 모듈은 특정 동작을 수행하도록 영구적으로 구성된 전용 회로 또는 로직을 포함할 수 있다. 예를 들어, 하드웨어 모듈은 필드 프로그램 가능한 게이트 어레이(field programmable gate array, FPGA) 또는 ASIC와 같은 특수 목적의 프로세서일 수 있다. 하드웨어 모듈은 또한 특정 동작을 수행하기 위해 소프트웨어로 일시적으로 구성되는 프로그래밍 가능한 논리 또는 회로를 포함할 수 있다. 예를 들어, 하드웨어 모듈은 범용 프로세서 또는 다른 프로그램 가능한 프로세서 내에 포함된 소프트웨어를 포함할 수 있다. 전용 및 영구적으로 구성된 회로에서, 또는 일시적으로 구성된 (예를 들어, 소프트웨어로 구성된) 회로에서 하드웨어 모듈을 기계적으로, 구현하기 위한 결정은 비용 및 시간 고려 사항에 의해 추진될 수 있다는 것이 인식될 것이다.
따라서, "하드웨어 모듈"이라는 문구는 유형의 실체를 포함하는 것으로 이해하여야 하며, 그러한 유형의 실체는 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들어, 하드웨어에 내장되거나) 또는 일시적으로 구성(예를 들어, 프로그래밍)되어, 본 명세서에 기재된 특정 방식으로 동작하거나 또는 특정 동작을 수행할 수 있다. 본 명세서에 사용된 "하드웨어 구현 모듈"은 하드웨어 모듈을 지칭한다. 하드웨어 모듈이 일시적으로 구성(예를 들어, 프로그래밍)되는 실시예를 고려하면, 각각의 하드웨어 모듈은 임의의 한 시간 인스턴스에서 구성되거나 인스턴스화될 필요가 없다. 예를 들어, 하드웨어 모듈이 소프트웨어에 의해 특수 목적 프로세서가 되도록 구성되는 범용 프로세서를 포함하는 경우, 범용 프로세서는 상이한 시간에 (예를 들어, 상이한 하드웨어 모듈을 포함하는) 각각 다른 특수 목적 프로세서로 구성될 수 있다. 따라서, 소프트웨어(예를 들어, 소프트웨어 모듈)는 예를 들어 하나의 시간 인스턴스에서 특정 하드웨어 모듈을 구성하고 상이한 시간 인스턴스에서 상이한 하드웨어 모듈을 구성하도록 하나 이상의 프로세서를 구성할 수 있다.
하드웨어 모듈은 다른 하드웨어 모듈에 정보를 제공하고 다른 하드웨어 모듈로부터 정보를 수신할 수 있다. 따라서, 전술한 하드웨어 모듈은 통신으로 연결된 것으로 간주될 수 있다. 복수의 하드웨어 모듈이 동시에 존재하는 경우, 통신은 둘 이상의 하드웨어 모듈 사이에서 신호 전송을 통해(예를 들어, 적절한 회로 및 버스를 통해) 성취될 수 있다. 복수의 하드웨어 모듈이 상이한 시간에 구성되거나 인스턴스화되는 실시예에서, 하드웨어 모듈 간의 통신은, 예를 들어, 복수의 하드웨어 모듈이 액세스하는 메모리 구조에 정보를 저장하고 검색하는 것을 통해 성취될 수 있다. 예를 들어, 하나의 하드웨어 모듈은 동작을 수행할 수 있으며 그 동작의 출력을 통신으로 연결된 메모리 디바이스에 저장할 수 있다. 이후, 추가의 하드웨어 모듈은 저장된 출력을 검색하고 처리하기 위해 메모리 디바이스에 액세스할 수 있다. 하드웨어 모듈은 또한 입력 또는 출력 디바이스와의 통신을 개시할 수 있고, 자원(예를 들어, 정보의 모음)에 대해 연산할 수 있다.
본 명세서에 기재된 예시적인 방법의 다양한 동작은 관련 동작을 수행하도록 일시적으로 구성되거나(예를 들면 소프트웨어에 의해) 또는 영구히 구성된 하나 이상의 프로세서로 적어도 부분적으로 수행될 수 있다. 일시적으로 또는 영구적으로 구성되든, 그러한 프로세서는 본 명세서에 기재된 하나 이상의 동작 또는 기능을 수행하도록 동작하는 프로세서 구현된 모듈을 구성할 수 있다. 본 명세서에 사용된 것으로, "프로세서 구현된 모듈"은 하나 이상의 프로세서를 사용하여 구현된 하드웨어 모듈을 지칭한다.
유사하게, 본 명세서에 기재된 방법은 적어도 부분적으로 프로세서로 구현될 수 있으며, 프로세서는 프로세서가 일 예의 하드웨어가 된다. 예를 들어, 방법의 동작의 적어도 일부분은 하나 이상의 프로세서 또는 프로세서 구현된 모듈에 의해 수행될 수 있다. 본 명세서에 사용된 것으로서, "프로세서 구현된 모듈"은 하드웨어가 하나 이상의 프로세서를 포함하는 하드웨어 모듈을 지칭한다. 또한, 하나 이상의 프로세서는 "클라우드 컴퓨팅(cloud computing)" 환경에서 또는 "서비스형 소프트웨어(Software as a Service, SaaS)"로서 관련 동작의 수행을 지원하도록 동작할 수 있다. 예를 들어, 적어도 일부 동작은 (프로세서를 포함하는 머신의 예로서) 컴퓨터 그룹에 의해 수행될 수 있으며, 이때 동작은 네트워크(예를 들어, 인터넷) 및 하나 이상의 적절한 인터페이스(예를 들어, 애플리케이션 프로그램 인터페이스(application program interface, API))를 통해 액세스 가능하다.
특정 동작의 수행은 단일 머신 내에 존재할 뿐만 아니라 복수의 머신에 걸쳐 배치되는 하나 이상의 프로세서 사이에 분산될 수 있다. 일부 실시예에서, 하나 이상의 프로세서 또는 프로세서 구현된 모듈은 단일의 지리적 위치에 (예를 들어, 가정 환경, 사무실 환경 또는 서버 팜 내에) 위치할 수 있다. 다른 실시예에서, 하나 이상의 프로세서 또는 프로세서 구현된 모듈은 복수의 지리적 위치에 걸쳐 분산될 수 있다.
본 명세서에서 논의된 주제 중 일부는 머신 메모리(예를 들어, 컴퓨터 메모리) 내의 비트 또는 이진 디지털 신호로서 저장된 데이터에 대한 연산의 알고리즘 또는 기호적 표현의 측면에서 제공될 수 있다. 이러한 알고리즘 또는 기호적 표현은 데이터 프로세싱 기술분야에서 통상의 지식을 가진 자가 자기들의 작업의 실체를 그 기술분야에서 통상의 지식을 가진 다른 자에게 전달하기 위해 사용되는 기술의 예이다. 본 명세서에 사용된 것으로 "알고리즘"은 동작의 일관성 있는 순서 또는 원하는 결과에 이르게 하는 유사한 프로세싱이다. 이러한 맥락에서, 알고리즘 및 연산에는 물리량의 물리적인 조작이 연루된다. 전형적으로, 그러나 반드시 그러한 것은 아니지만, 그러한 양은 머신에 의해 저장되거나, 액세스되거나, 전송되거나, 조합되거나, 비교되거나 또는 달리 조작될 수 있는 전기, 자기 또는 광신호의 형태를 취할 수 있다. "데이터", "콘텐츠", "비트", "값", "요소", "기호", "문자", "용어", “번호”, “숫자” 등과 같은 단어를 사용하여 그와 같은 신호를 지칭하는 것은 원칙적으로 일반적으로 사용한다는 이유 때문에 때로는 편리하다. 그러나 단어들은 단지 편리한 레이블일 뿐이며 적절한 물리적 양과 연관되어야 한다.
달리 구체적으로 언급되지 않는 한, "프로세싱", "컴퓨팅", "계산", "결정", "제공", "디스플레이", "식별" 등과 같은 단어를 사용하여 본 명세서에서 논의된 내용은 하나 이상의 메모리(예를 들면, 휘발성 메모리, 비휘발성 메모리 또는 이들의 적절한 조합), 레지스터, 또는 정보를 수신하거나, 저장하거나 전송하거나 또는 디스플레이하는 다른 머신 컴포넌트 내의 물리량(예를 들어, 전기, 자기, 또는 광)으로서 표현된 데이터를 조작하거나 변환하는 머신(예를 들어, 컴퓨터)의 행위 또는 프로세스를 지칭할 수 있다. 그뿐만 아니라, 달리 구체적으로 언급되지 않는 한, "하나" 또는 "하나의"이라는 용어는 특허 문헌에 일반적인 것으로, 본 명세서에서는 하나 이상의 인스턴스를 포함하는 것으로 사용된다. 마지막으로, 본 명세서에 사용된 것으로, "또는"이라는 접속사는 달리 특별히 명시되지 않는 한 배타적이지 않은 "또는"을 의미한다.
비록 본 명세서에서 "제 1", "제 2" 등의 용어가 사용되어 다양한 요소를 설명할 수 있을지라도, 이들 요소는 이러한 용어로 한정되지 않는다. 이들 용어는 하나의 요소를 다른 요소와 구별하기 위해서만 사용된다.

Claims (19)

  1. 시스템으로서,
    제 1 제품 검색 결과 통신정보(product search result communication)를 수신하도록 적응된 네트워크 인터페이스와,
    상기 네트워크 인터페이스로부터 상기 제 1 제품 검색 결과 통신정보를 수신하고 상기 제 1 제품 검색 결과 통신정보를 분석하여 상기 제 1 제품 검색 결과 통신정보의 복수의 제품 검색 결과에 대해 반복된 제품 정보 구조(repeated product information structure)를 식별하도록 적응된 구조 분석 모듈 - 상기 복수의 제품 검색 결과의 각 제품 검색 결과는 복수의 제품 요소를 포함하고, 각 제품 요소는 상기 반복된 제품 정보 구조 내에서 위치를 가짐 - 과,
    상기 제 1 제품 검색 결과 통신정보의 제 1 제품 요소를 식별하는 타겟 요소 입력을 수신하고, 상기 제 1 제품 요소와 연관된 상기 반복된 제품 정보 구조 내의 제 1 위치를 식별하기 위해 상기 반복된 제품 정보 구조를 분석하고, 상기 반복된 제품 정보 구조의 상기 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보의 각 제품 요소를 식별하기 위해 상기 제 1 제품 검색 결과 통신정보를 분석하도록 구성된 요소 선택 및 필터링 모듈과,
    상기 반복된 제품 정보 구조의 상기 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보의 각 제품 요소의 리스트를 포함하는 제 1 레코드를 저장하도록 적응된 메모리 모듈을 포함하는
    시스템.
  2. 제 1 항에 있어서,
    상기 반복된 제품 정보 구조 내의 상기 제 1 위치는 상기 제 1 제품 검색 결과 통신정보에 의해 식별된 복수의 제품 각각에 대한 비용과 연관되는
    시스템.
  3. 제 1 항에 있어서,
    상기 구조 분석 모듈은 텍스트 파서(text parser)를 포함하며, 상기 반복된 제품 정보 구조를 식별하기 위해 상기 제 1 제품 검색 결과 통신정보를 분석하는 것은 상기 제 1 제품 검색 결과 통신정보 내의 반복된 텍스트 요소를 식별하기 위해 상기 텍스트 파서를 사용하여 상기 제 1 제품 검색 결과를 파싱하는 것을 포함하는
    시스템.
  4. 제 3 항에 있어서,
    상기 메모리 모듈은 한 세트의 요소 템플릿을 저장하도록 적응되며,
    상기 반복된 제품 정보 구조를 식별하기 위해 상기 제 1 제품 검색 결과 통신정보를 분석하는 것은,
    상기 제 1 제품 검색 결과 통신정보 내의 상기 반복된 텍스트 요소를 상기 요소 템플릿 세트에 비교하는 것과,
    상기 제 1 반복된 텍스트 요소가 상기 요소 템플릿 세트의 제 1 요소 템플릿과 일치할 때, 상기 반복된 텍스트 요소의 제 1 반복된 텍스트 요소를 상기 반복된 제품 정보 구조 내의 상기 제 1 위치와 연관시키는 것을 포함하는
    시스템.
  5. 제 4 항에 있어서,
    상기 반복된 제품 정보 구조를 식별하기 위해 상기 제 1 제품 검색 결과 통신정보를 분석하는 것은,
    상기 제 1 제품 검색 결과 통신정보 내의 상기 반복된 텍스트 요소를 상기 요소 템플릿 세트에 비교하는 것과,
    상기 제 1 반복된 텍스트 요소가 상기 요소 템플릿 세트의 상기 제 1 요소 템플릿과 일치할 때, 상기 반복된 텍스트 요소의 제 2 반복된 텍스트 요소를 상기 반복된 제품 정보 구조 내의 제 2 위치와 연관시키는 것을 포함하는
    시스템.
  6. 제 5 항에 있어서,
    상기 제 2 반복된 텍스트 요소는 상기 반복된 제품 정보 구조의 상기 제 1 반복된 텍스트 요소 내에 삽입되는
    시스템.
  7. 제 1 항에 있어서,
    상기 제 1 제품 검색 결과 통신정보를 사용하여 제 1 제품 검색 결과 웹 사이트를 디스플레이하도록 적응된 출력 디스플레이 모듈을 더 포함하는
    시스템.
  8. 제 7 항에 있어서,
    상기 반복된 제품 정보 구조를 식별하기 위해 상기 제 1 제품 검색 결과 통신정보를 분석하는 것은,
    상기 제 1 제품 검색 결과 웹 사이트의 일부로서 상기 출력 디스플레이 모듈에 디스플레이된 상기 각각의 제품 요소의 기하학적 위치를 분석하는 것과;
    상기 제 1 제품 검색 결과 통신정보에 의해 정의되고 상기 출력 디스플레이 모듈상에 디스플레이된 상기 제 1 제품 검색 결과 웹 사이트의 반복된 기하학적 패턴으로부터 상기 반복된 제품 정보 구조를 식별하는 것을 포함하는
    시스템.
  9. 제 7 항에 있어서,
    입력 디바이스 및 상기 출력 디스플레이 모듈상에 디스플레이되는 그래픽 사용자 인터페이스를 포함하는 사용자 입력 모듈을 더 포함하는
    시스템.
  10. 제 9 항에 있어서,
    상기 타겟 요소 입력은 상기 입력 디바이스로부터의 사용자 입력을 포함하며, 상기 사용자 입력은 상기 반복된 제품 정보 구조의 상기 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보의 각 제품 요소의 리스트를 포함하는 제 1 레코드를 선택하는
    시스템.
  11. 제 9 항에 있어서,
    상기 반복된 제품 정보 구조를 식별하기 위해 상기 제 1 제품 검색 결과 통신정보를 분석하는 것은 상기 입력 디바이스 및 상기 그래픽 사용자 인터페이스를 통해, 상기 반복된 제품 정보 구조의 일부로서 하나 이상의 반복된 제품 요소를 식별하는 하나 이상의 사용자 선택을 수신하는 것을 포함하는
    시스템.
  12. 제 1 항에 있어서,
    상기 타겟 요소 입력은 상기 메모리 모듈로부터 수신되는 타겟 요소 템플릿을 포함하는
    시스템.
  13. 디바이스로서,
    제 1 제품 검색 결과 통신정보를 수신하기 위한 수단과,
    상기 제 1 제품 검색 결과 통신정보 내에서 반복된 제품 정보 구조를 식별하기 위한 수단과,
    타겟 요소 입력을 수신하기 위한 수단 - 상기 타겟 요소 입력은 상기 반복된 제품 정보 구조 내의 제 1 위치에 있는 제 1 제품 요소를 식별함 - 과,
    상기 타겟 요소 입력의 수신에 응답하여, 상기 반복된 제품 정보 구조 내의 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보 내의 복수의 요소를 식별하기 위한 수단과,
    상기 반복된 제품 정보 구조 내의 상기 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보 내의 상기 복수의 요소를 포함하는 제 1 레코드를 저장하기 위한 수단을 포함하는
    디바이스.
  14. 제 13 항에 있어서,
    상기 제 1 제품 검색 결과 통신정보에 기초하여 제 1 제품 검색 결과 웹 사이트를 디스플레이하기 위한 수단을 더 포함하는
    디바이스.
  15. 제 13 항에 있어서,
    사용자 입력에 응답하여 상기 반복된 제품 정보 구조를 조정하기 위한 수단을 더 포함하는
    디바이스.
  16. 컴퓨터 구현된 방법으로서,
    제 1 제품 검색 결과 통신정보를 수신하는 단계와,
    상기 제 1 제품 검색 결과 통신정보를 분석하여 상기 제 1 제품 검색 결과 통신정보의 복수의 제품 검색 결과에 대해 반복된 제품 정보 구조를 식별하는 단계 - 상기 복수의 제품 검색 결과의 각 제품 검색 결과는 복수의 제품 요소를 포함하며, 각각의 상기 제품 요소는 상기 반복된 제품 정보 구조 내의 위치를 가짐 - 와,
    상기 제 1 제품 검색 결과 통신정보의 제 1 제품 요소를 식별하는 타겟 요소 입력을 수신하는 단계와,
    상기 반복된 제품 정보 구조를 분석하여 상기 제 1 제품 요소와 연관된 상기 반복된 제품 정보 구조 내의 제 1 위치를 식별하는 단계와,
    상기 제 1 제품 검색 결과 통신정보를 분석하여 상기 반복된 제품 정보 구조의 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보의 각 제품 요소를 식별하는 단계와,
    상기 반복된 제품 정보 구조의 제 1 위치에 있는 상기 제 1 제품 검색 결과 통신정보의 각 제품 요소의 리스트를 포함하는 제 1 레코드를 저장하는 단계를 포함하는
    컴퓨터 구현된 방법.
  17. 제 16 항에 있어서,
    상기 반복된 제품 정보 구조는 복수의 위치 노드를 포함하며,
    상기 복수의 위치 노드는 상기 제 1 제품 검색 결과 통신정보 내에서 제 1 반복된 구조와 연관된 최상위 레벨 위치 노드를 포함하며, 상기 최상위 레벨 위치 노드는 상기 제 1 반복된 구조 내에서 발생하는 제 2 반복된 구조와 연관된 하나 이상의 최하위 레벨 위치 노드를 포함하는
    컴퓨터 구현된 방법.
  18. 청구항 제 16 항 또는 제 17 항의 방법을 수행하도록 머신을 제어하는 머신 판독가능 명령어를 저장하는
    머신 판독가능 매체.
  19. 청구항 제 1 항 내지 제 12 항 중 어느 한 항의 시스템으로서 구성되도록 머신을 제어하는 머신 판독가능 명령어를 저장하는
    머신 판독가능 매체.
KR1020177014299A 2014-10-28 2015-10-26 유사 그룹 요소 추출 KR102024998B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/526,231 2014-10-28
US14/526,231 US9741018B2 (en) 2014-10-28 2014-10-28 Systems and methods for extracting similar group elements
PCT/US2015/057317 WO2016069447A1 (en) 2014-10-28 2015-10-26 Extracting similar group elements

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020197027132A Division KR102233867B1 (ko) 2014-10-28 2015-10-26 유사 그룹 요소 추출

Publications (2)

Publication Number Publication Date
KR20170073693A true KR20170073693A (ko) 2017-06-28
KR102024998B1 KR102024998B1 (ko) 2019-09-24

Family

ID=55792174

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020217008815A KR102361112B1 (ko) 2014-10-28 2015-10-26 유사 그룹 요소 추출
KR1020177014299A KR102024998B1 (ko) 2014-10-28 2015-10-26 유사 그룹 요소 추출
KR1020197027132A KR102233867B1 (ko) 2014-10-28 2015-10-26 유사 그룹 요소 추출

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020217008815A KR102361112B1 (ko) 2014-10-28 2015-10-26 유사 그룹 요소 추출

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020197027132A KR102233867B1 (ko) 2014-10-28 2015-10-26 유사 그룹 요소 추출

Country Status (5)

Country Link
US (1) US9741018B2 (ko)
EP (1) EP3213236A4 (ko)
KR (3) KR102361112B1 (ko)
CN (1) CN107077500B (ko)
WO (1) WO2016069447A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220057662A (ko) * 2017-12-22 2022-05-09 구글 엘엘씨 전자 리스트 사용자 인터페이스

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180260389A1 (en) * 2017-03-08 2018-09-13 Fujitsu Limited Electronic document segmentation and relation discovery between elements for natural language processing
CN109064253A (zh) 2018-07-05 2018-12-21 京东方科技集团股份有限公司 一种新产品报价方法、报价装置及电子设备
US11663655B2 (en) * 2019-07-03 2023-05-30 Capital One Services, Llc Augmenting online transaction statements using e-commerce receipts
US11409829B2 (en) 2020-12-21 2022-08-09 Capital One Services, Llc Methods and systems for redirecting a user from a third party website to a provider website
KR20240048151A (ko) 2022-10-06 2024-04-15 에어돔건설엔지니어링 주식회사 하중분산케이블에 적용되는 하네스 홀더와 마운트 베이스를 갖는 에어돔 장치
KR20240048153A (ko) 2022-10-06 2024-04-15 에어돔건설엔지니어링 주식회사 열 포집막과 열 공급배관이 장착된 에어돔용 제설장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154213A (en) * 1997-05-30 2000-11-28 Rennison; Earl F. Immersive movement-based interaction with large complex information structures
US20080059486A1 (en) * 2006-08-24 2008-03-06 Derek Edwin Pappas Intelligent data search engine

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040072016A (ko) * 2003-02-08 2004-08-16 김철원 인터넷에서 개인 판매원을 이용한 위임 판매 방법과 이에관한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체
KR20060006587A (ko) * 2004-07-16 2006-01-19 이팔진 인터넷상에서의 광고정보검색 및 맞춤형정보 제공시스템
US7984047B2 (en) 2005-04-12 2011-07-19 Jesse David Sukman System for extracting relevant data from an intellectual property database
CN101582075B (zh) * 2009-06-24 2011-05-11 大连海事大学 Web信息抽取系统
US8438080B1 (en) * 2010-05-28 2013-05-07 Google Inc. Learning characteristics for extraction of information from web pages
US8412594B2 (en) * 2010-08-28 2013-04-02 Ebay Inc. Multilevel silhouettes in an online shopping environment
US20140032264A1 (en) * 2012-07-25 2014-01-30 Indix Corporation Data refining engine for high performance analysis system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6154213A (en) * 1997-05-30 2000-11-28 Rennison; Earl F. Immersive movement-based interaction with large complex information structures
US20080059486A1 (en) * 2006-08-24 2008-03-06 Derek Edwin Pappas Intelligent data search engine

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220057662A (ko) * 2017-12-22 2022-05-09 구글 엘엘씨 전자 리스트 사용자 인터페이스
US11734323B2 (en) 2017-12-22 2023-08-22 Google Llc Electronic list user interface

Also Published As

Publication number Publication date
CN107077500A (zh) 2017-08-18
KR102233867B1 (ko) 2021-03-30
WO2016069447A1 (en) 2016-05-06
KR20190108657A (ko) 2019-09-24
CN107077500B (zh) 2021-04-02
EP3213236A4 (en) 2018-03-21
KR102361112B1 (ko) 2022-02-14
KR20210035348A (ko) 2021-03-31
US9741018B2 (en) 2017-08-22
EP3213236A1 (en) 2017-09-06
KR102024998B1 (ko) 2019-09-24
US20160117398A1 (en) 2016-04-28

Similar Documents

Publication Publication Date Title
US10963513B2 (en) Data system and method
KR102361112B1 (ko) 유사 그룹 요소 추출
US20210318851A1 (en) Systems and Methods for Dataset Merging using Flow Structures
US8601120B2 (en) Update notification method and system
US20180060297A1 (en) Method and apparatus for natural language query in a workspace analytics system
US9304979B2 (en) Authorized syndicated descriptions of linked web content displayed with links in user-generated content
US9218568B2 (en) Disambiguating data using contextual and historical information
US9910870B2 (en) System and method for creating data models from complex raw log files
CN102541853B (zh) 一种利用浏览器地址栏获取应用信息的方法和装置
AU2014400621B2 (en) System and method for providing contextual analytics data
AU2009238294A1 (en) Data transformation based on a technical design document
CN103577392A (zh) 基于当前浏览页面的关键词推送方法及装置
EP3557437A1 (en) Systems and methods for search template generation
US9262550B2 (en) Processing semi-structured data
WO2017196407A1 (en) Forking digital content items between digital topical environments
US10354339B2 (en) Automatic initiation for generating a company profile
US20160012091A1 (en) Annotating structured data for search
US20160092506A1 (en) Generating suggested structured queries
US20210055928A1 (en) Integration test framework
US10467708B2 (en) Determining an omitted company page based on a connection density value
US20160110387A1 (en) Product lifecycle management system
US20150169607A1 (en) Systems and methods to present images representative of searched items
US10255260B2 (en) System and framework for transforming domain data
KR101635466B1 (ko) 표시된 콘텐츠를 이동하여 저장하는 콘텐츠 제공시스템 및 콘텐츠 제공방법
CN114358000A (zh) 从非结构化文档提取结构化信息

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant