US20030172053A1 - System and method for mining data - Google Patents

System and method for mining data Download PDF

Info

Publication number
US20030172053A1
US20030172053A1 US10357290 US35729003A US2003172053A1 US 20030172053 A1 US20030172053 A1 US 20030172053A1 US 10357290 US10357290 US 10357290 US 35729003 A US35729003 A US 35729003A US 2003172053 A1 US2003172053 A1 US 2003172053A1
Authority
US
Grant status
Application
Patent type
Prior art keywords
function
parser
string
source
lt
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US10357290
Inventor
John Fairweather
Original Assignee
John Fairweather
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

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06KRECOGNITION OF DATA; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K13/00Conveying record carriers from one station to another, e.g. from stack to punching mechanism
    • G06K13/02Conveying record carriers from one station to another, e.g. from stack to punching mechanism the record carrier having longitudinal dimension comparable with transverse dimension, e.g. punched card
    • G06K13/08Feeding or discharging cards
    • G06K13/0806Feeding or discharging cards using an arrangement for ejection of an inserted card
    • G06K13/0825Feeding or discharging cards using an arrangement for ejection of an inserted card the ejection arrangement being of the push-push kind
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4493Object persistence
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/912Applications of a database
    • Y10S707/913Multimedia
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/964Database arrangement
    • Y10S707/966Distributed
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation

Abstract

A system and method for extracting data, hereinafter referred to as MitoMine™, that produces a strongly-typed ontology defined collection referencing (and cross referencing) all extracted records. The input to the mining process can be any data source, such as a text file delimited into a set of possibly dissimilar records. Mitomine contains parser routines and post-processing functions, known as ‘munchers’. The parser routines can be accessed either via a batch mining process or as part of a running server process connected to a live source. Munchers can be registered on a per data-source basis in order to process the records produced, possibly writing them to an external database and/or a set of servers. The present invention also embeds an interpreted ontology based language within a compiler/interpreter (for the source format) such that the statements of the embedded language are executed as a result of the source compiler ‘recognizing’ a given construct within the source and extracting the corresponding source content. In this way, the execution of the statements in the embedded program will occur in a sequence that is dictated wholly by the source content. This system and method therefore make it possible to bulk extract free-form data from such sources as CD-ROMs, the web etc. and have the resultant structured data loaded into an ontology based system.

Description

    BACKGROUND OF THE INVENTION
  • [0001]
    The data ingestion and conversion process is generally known as data mining, and the creation of robust systems to handle this problem is the subject of much research, and has spawned the creation of many specialized languages (e.g., Perl) intended to make this process easier. Unfortunately, while there have been some advances, the truth of the matter is that none of these ‘mining’ languages really provides anything more than a string manipulation library embedded into the language syntax itself. In other words, such languages are nothing more than shorthand for the equivalent operations written as a series of calls to a powerful subroutine library. A prerequisite for any complex data processing application, specifically a system capable of processing and analyzing disparate data sources, is a system that can convert the structured, semi-structured, and un-structured information sources into their equivalent representation in the target ontology, thereby unifying all sources and allowing cross-source analysis.
  • [0002]
    For example, in a current generation data-extraction script, the code involved in the extraction basically works its way through the text from beginning to end trying to recognize delimiting tokens and once having done so to extract any text within the delimiters and then assign it to the output data structure. When there is a one-to-one match between source data and target representation, this is a simple and effective strategy. As we widen the gap between the two, however, such as by introducing multiple inconsistent sources, increasing the complexity of the source, nesting information in the source to multiple levels, cross referencing arbitrarily to other items within the source, and distributing and interspersing the information necessary to determine an output item within a source, the situation rapidly becomes completely unmanageable by this technique, and highly vulnerable to the slightest change in source format or target data model. This mismatch is at the heart of all problems involving the need for multiple different systems to intercommunicate meaningful information, and makes conventional attempts to mine such information prohibitively expensive to create and maintain. Unfortunately for conventional mining techniques, much of the most valuable information that might be used to create truly intelligent systems comes from publishers of various types. Publishing houses make their money from the information that they aggregate, and thus are not in the least bit interested in making such information available in a form that is susceptible to standard data mining techniques. Furthermore, most publishers deliberately introduce inconsistencies and errors into their data in order both to detect intellectual property rights violations by others, and to make automated extraction as difficult as possible. Each publisher, and indeed each title from any given publisher, uses different formats, and has an arrangement that is custom tailored to the needs of whatever the publication is. The result is that we are faced with a variety of source formats on CD-ROMs, databases, web sites, and other legacy systems that completely stymie standard techniques for acquisition and integration. Very few truly useful sources are available in a nice neat tagged form such as XML and thus to rely on markup languages such as XML to aid in data extraction is a woefully inadequate approach in real-world situations.
  • [0003]
    One of the basic problems that makes the extraction process difficult is that the control-flow based program that is doing the extraction has no connection to the data itself (which is simply input) and must therefore invest huge amounts of effort extracting and keeping track of its ‘state’ in order to know what it should do with information at any given time. What is needed, then, is a system in which the content of the data itself actually determines the order of execution of statements in the mining language and automatically keeps track of the current state. In such a system, whenever an action was required of the extraction code, the data would ‘tell’ it to take that action, and all of the complexity would melt away. Assuming such a system is further tied to a target system ontology, the mining problem would become quite simple. Ideally, such a solution would tie the mining process to compiler theory, since that is most powerful formalized framework available for mapping source textual content into defined actions and state in a rigorous and extensible manner. It would also be desirable to have an interpreted language that is tied to the target ontology (totally different from the source format), and for which the order of statement execution could be driven by source data content
  • SUMMARY OF INVENTION
  • [0004]
    The system of this invention takes the data mining process to a whole new level of power and versatility by recognizing that, at the core of our past failings in this area, lies the fact that conventional control-flow based programming languages are simply not suited to the desired system, and must be replaced at the fundamental level a more flexible approach to software system generation. There are two important characteristics of the present invention that help create this paradigm shift. The first is that, in the preferred embodiment, the system of the present invention includes a system ontology such that the types and fields of the ontology can be directly manipulated and assigned within the language without the need for explicit declarations. For example, to assign a value to a field called “notes.sourceNotes” of a type, the present invention would only require the statement “notes.sourceNotes=”. An ontology is an explicit formal specification of how to represent the objects, concepts and other entities that are assumed to exist in some area of interest and the relationships that hold among them. The second, and one of the most fundamental characteristics, is that the present invention gives up on the idea of a control-flow based programming language (i.e., one where the order of execution of statements is determined by the order of those statements within the program) in order to dramatically simplify the extraction of data from a source. In other words, the present invention represents a radical departure from all existing “control” notions in programming.
  • [0005]
    The present invention, hereinafter referred to as MitoMine™, is a generic data extraction capability that produces a strongly-typed ontology defined collection referencing (and cross referencing) all extracted records. The input to the mining process tends to be some form of text file delimited into a set of possibly dissimilar records. Mitomine contains parser routines and post processing functions, known as ‘munchers’. The parser routines can be accessed either via a batch mining process or as part of a running server process connected to a live source. Munchers can be registered on a per data-source basis in order to process the records produced, possibly writing them to an external database and/or a set of servers. The present invention embeds an interpreted ontology based language within a compiler/interpreter (for the source format) such that the statements of the embedded language are executed as a result of the source compiler ‘recognizing’ a given construct within the source and extracting the corresponding source content. In this way, the execution of the statements in the embedded program will occur in a sequence that is dictated wholly by the source content. This system and method therefore make it possible to bulk extract free-form data from such sources as CD-ROMs, the web etc. and have the resultant structured data loaded into an ontology based system.
  • [0006]
    In the preferred embodiment, a MitoMine™ parser is defined using three basic types of information:
  • [0007]
    1) A named source-specific lexical analyzer specification
  • [0008]
    2) A named BNF specification for parsing the source
  • [0009]
    3) A set of predefined plug-in functions capable of interpreting the source information via C** statements.
  • [0010]
    Other improvements and extentions to this system will be defined herein.
  • BRIEF DESCRIPTION OF THE FIGURES
  • [0011]
    [NONE]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
  • [0012]
    The present invention is built upon this and, in the preferred embodiment, uses a number of other key technologies and concepts. For example, these following patent applications (which are expressly incorporated herein) disclose all the components necessary to build up a system capable of auto-generating all user interface, storage tables, and querying behaviors required in order to create a system directly from the specifications given in an ontology description language (ODL). These various building-block technologies have been previously described in the following patent applications:
  • [0013]
    1) Appendix 1—Memory Patent
  • [0014]
    2) Appendix 2—Lexical Patent
  • [0015]
    3) Appendix 3—Parser Patent
  • [0016]
    4) Appendix 4—Types Patent
  • [0017]
    5) Appendix 5—Collections Patent
  • [0018]
    6) Appendix 6—Ontology Patent
  • [0019]
    In the Parser Patent, a system was described that permits execution of the statements in the embedded program in a sequence that is dictated wholly by the source content, in that the ‘reverse polish’ operators within that system are executed as the source parse reaches an appropriate state and, as further described in that patent, these operators are passed a plug-in hint string when invoked. In the preferred embodiment, the plug-in hint string will be the source for the interpreted ontology-based language and the plug-ins themselves will invoke an inner level parser in order to execute these statements. The Ontology Patent introduced an ontology based language that is an extension of the C language known as C*. This is the preferred ontology based language for the present invention. We will refer to the embedded form of this language as C**, the extra ‘*’ symbol being intended to imply the additional level of indirection created by embedding the language within a source format interpreter. The output of a mining process will be a set of ontology defined types (see Types Patent) within a flat data-model collection (see Memory Patent and Collection Patent) suitable for instantiation to persistent storage and subsequent query and access via the ontology (see patent reference 6).
  • [0020]
    In the preferred embodiment, a MitoMine™ parser is defined using three basic types of information:
  • [0021]
    1) A named source-specific lexical analyzer specification
  • [0022]
    2) A named BNF specification for parsing the source
  • [0023]
    3) A set of predefined plug-in functions capable of interpreting the source information via C** statements.
  • [0024]
    The BNF format may be based upon any number of different BNF specifications. MitoMine™ provides the following additional built-in parser plug-ins which greatly facilitate the process of extracting unstructured data into run-time type manager records:
  • <@1:1>
  • <@1:2>
  • [0025]
    These two plug-ins delimit the start and end of an arbitrary possibly multi-lined string to be assigned to the field designated by the following call to <@1:5:fieldPath=$>. This is the method used to extract large arbitrary text fields. The token sequence for these plug-ins is always of the form <@1:1><1:String><@1:2>, that is any text occurring after the appearance of the <@1:1> plug-in on the top of the parsing stack will be converted into a single string token (token #1) which will be assigned on the next <@1:5> plug-in. The arbitrary text will be terminated by the occurrence of any terminal in the language (defined in the LEX specification) whose value is above 128. Thus the following snippet of BNF will cause the field ‘pubName’ to be assigned whatever text occurs between the token <PUBLICATION> and <VOLUME/ISSUE> in the input file:
  • <PUBLICATION><@1:1><1:String><@1:2><@1:5:pubName=$>
  • <VOLUME/ISSUE><3:Declnt><@1:5:volume=$>
  • [0026]
    In the preferred embodiment, when extracting these arbitrary text fields, all trailing and leading white space is removed from the string before assignment, and all occurrences of LINE_FEED are removed to yield a valid text string. The fact that tokens below 128 will not terminate the arbitrary text sequence is important in certain situations where a particular string is a terminal in the language and yet might also occur within such a text sequence where it should not be considered to have any special significance. All such tokens can be assigned token numbers below 128 in the LEX specification thus ensuring that no confusion arises. The occurrence of another <@1:1> or a <@1:4> plug-in causes any previous <1:String> text accumulated to be discarded. A <@1:5> causes execution of a C** statements that generally cause extracted information to be assigned to the specified field and then clears the record of the accumulation. If a plug-in hint consisting of a decimal number follows the <@1:1> as in <@1:1:4> that number specifies the maximum number of lines of input that will be consumed by the plug-in (four in this example). This is a useful means to handle input where the line number or count is significant.
  • <@1:3>
  • [0027]
    In the preferred embodiment, the occurrence of this plug-in indicates that the extraction of a particular record initiated by the <@1:4> plug-in is complete and should be added to the collection of records extracted.
  • <@1:4:typeName>
  • [0028]
    In the preferred embodiment, the occurrence of the plug-in above indicates that the extraction of a new record of the type specified by the ‘typeName’ string is to begin. The “typename” will preferably match a known type manager type either defined elsewhere or within the additionally type definitions supplied as part of the parser specification.
  • <@1:5:C** assignment(s)>
  • [0029]
    In the preferred embodiment, the plug-in above is used to assign values to either a field or a register. Within the assigned expression, the previously extracted field value may be referred to as ‘$’. Fields may be expressed as a path to sub-fields of the structure to any depth using normal type manager path notation (same as for C). As an example, the field specifier “description[$aa].u.equip.specifications” refers to a field within the parent structure that is within an array of unions. The symbol ‘$aa’ is a register designator. There are 26*26 registers ‘$aa’ to ‘$zz’ which may be used to hold the results of calculations necessary to compute field values. A single character register designator may also be used instead thus ‘$a’ is the same as ‘$aa’, ‘$b’ is the same as ‘$ba’ etc. Register names may optionally be followed by a text string (no spaces) in order to improve readability (as in $aa:myIndex) but this text string is ignored by the C** interpreter. The use of registers to store extracted information and context is key to handling the distributed nature of information in published sources. In the example above, ‘$a’ is being used as an index into the array of ‘description’ fields. To increment this index a “<@1:5:$a=$a+1>” plug-in call would be inserted in the appropriate part of the BNF (presumably after extraction of an entire ‘description’ element). All registers are initially set to zero (integer) when the parse begins, thereafter their value is entirely determined by the <@1:5> plug-ins that occur during the extraction process. If a register is assigned a real or string value, it adopts that type automatically until a value of another type is assigned to it. Expressions may include calls to functions (of the form $FuncName), which provide a convenient means of processing the inputs extracted into certain data types for assignment. These functions provide capabilities comparable to the string processing libraries commonly found with older generation data mining capabilities.
  • [0030]
    When assigning values to fields, the <@1:5> plug-in performs intelligent type conversions, for example:
  • [0031]
    1) If the token is a <1:String> and the field is a ‘charHdI’, a handle is created and assigned to the field. Similarly for a ‘charPtr’. If the field is a fixed length character array, the string is copied into it. If it won't fit, a bounds error is flagged. If the field is already non-empty (regardless of type) then the <@1:5> plugin appends any new text to the end of the field value (if possible). Note that registers do not append automatically unless you use the syntax $a=$a+“string”.
  • [0032]
    2) If the field is numeric, appropriate type conversions from the extracted value occur. Range checking could be automatic. Multiple assignments may be separated by semi-colons. The full syntax supported within the ‘assignment’ string is defined by the system BNF language “MitoMine” (described below).
  • [0033]
    Note that because the order of commutative operator (e.g., “+”) evaluation is guaranteed to be left-to-right, multiple non-parenthesized string concatenation operations can be safely expressed as a single statement as in:
  • fieldname=“Hello”+$FirstCapOnly($a)+“do you like”+$b+“\n”
  • [0034]
    The <@1:5> plug-in may also be used to support limited conditional statements which may be performed using the ‘if’ and ‘ifelse’ keywords. The effect of the ‘if’ is to conditionally skip the next element of the production that immediately follows the <@1:5> containing the ‘if’ (there can be only one statement within an ‘if’ or ‘ifelse’ block). For example:
  • <@1:5:if(1==0)><@1:4:typeName>
  • [0035]
    would cause the <@1:4> plug-in to be discarded without interpretation. Similarly:
  • <@1:5:ifelse(1==0)><@1:4:typeName1><@1:4:typeName2>
  • [0036]
    causes execution of the second of the two <@1:4> plug-ins while:
  • <@1:5:ifelse(0= =)><@1:5:$a=$a+1;$b=1><@1:5:$a=$a−1;$b=0>
  • [0037]
    causes execution of the first block to increment $a and assign $b to 1.
  • [0038]
    More significantly, since it is possible to discard any element from the production in this manner, the prudent use of conditional <@1:5> evaluation can be used to modify the recognized syntax of the language. Consider the following production:
  • myProduction::=<@1:5:ifelse($a>=0)>positive_prod negative_prod
  • [0039]
    In this example, the contents of register ‘$a’ is determining which of two possible productions will get evaluated next. This can be a very powerful tool for solving non-context-free language ambiguities (normally intractable to this kind of parser) by remembering the context in one of the registers and then resolving the problem later when it occurs. The results of misusing this capability can be very confusing and the reader is referred to the incorporated materials of the Parser Patent for additional details. That having been said, the following simplified guidelines should help to ensure correctness:
  • [0040]
    For any production of the form:
  • prod::=<@1:5:ifelse (expression)> thenClause elseClause
  • [0041]
    Ensure:
  • [0042]
    1) FIRST(thenClause)==FIRST(elseClause)
  • [0043]
    2) Either both thenClause and elseClause are NULLABLE, or neither is
  • [0044]
    3) If elseClause is not NULLABLE, and if necessary (depending on other occurences of thenClause),
  • [0045]
    include a production elsewhere {that may never be executed} to ensure that FOLLOW(thenClause) includes FOLLOW(elseClause)
  • [0046]
    For any production of the form:
  • prod::=prevElement<@1:5:if(expression)>thenClause nextElement
  • [0047]
    Ensure that if thenClause is not NULLABLE, and if necessary (depending on other occurences of nextElement), include a production elsewhere {that may never be executed} to ensure that FIRST(nextElement) is entirely contained within FOLLOW(prevElement).
  • [0048]
    Note that all plug-ins may contain multiple lines of text by use of the <cont> symbol (see Parser patent). This may be required in the case where a <@1:5> statement exceeds the space available on a single line (e.g., many parameters to a function). The maximum size of any given plug-in text in the preferred embodiment is 8 KB.
  • [0049]
    The present invention also permits the specification of the language specific parser to include any user dialogs and warnings that might be required for the parser concerned, any additional type definitions that might be required as part of parser operation, and any custom annotations and scripts (see Collections Patent) that might be necessary.
  • [0050]
    Within the <@1:5> plug-in, in addition to supporting conditionals, additive, multiplicative and assignment operators, this package preferably provides a number of built-in functions that may be useful in manipulating extracted values in order to convert them to a form suitable for assignment to typed fields. These functions are loosely equivalent to the string processing library of conventional mining languages. Function handlers may be registered (via a registry API—see Parser Patent for further details) to provide additional built in functions. In the built-in function descriptions below, for example, the type of a given parameter is indicated between square brackets. The meaning of these symbols in this example is as follows:
  • [0051]
    [I]—Integer value (64 bit)
  • [0052]
    [F]—Floating point value (double)
  • [0053]
    [S]—String value
  • [0054]
    The following is a partial list of predefined built-in functions that have been found to be useful in different data mining situations. New functions may be added to this list and it is expected that use of the system will often include the step of adding new functions. In such a case, if a feature is not provided, it can be implemented and registered as part of any particular parser definition. On the other hand, none of the features listed below are required meaning that a much smaller set of functions could also be used. In the preferred embodiment, however, the following functions (or ones having similar functionality) would be available.
  • [0055]
    1) [F] $Date( )
  • [0056]
    get current date/time into a date-double
  • [0057]
    2) [F] $StringToDate([S] dateString,[S] calendar)
  • [0058]
    convert “dateString” to date/time double, current date if date string format invalid. The currently supported calendar values are “G”—Gregorian, “J”—Julian etc. Note that in the Gregorian calendar you may specify the date string in a wide variety of formats, in any other calendar it must be in the following format: “yyyy:mm:dd [hh:mm[:ss] [AM/PM]]”
  • [0059]
    3) [S] $TextAfter([S] srcStr,[S] delimStr)
  • [0060]
    Return the string portion after the specified delimiter sequence. Returns“” if not found.
  • [0061]
    4) [S] $TextBefore([S] srcStr,[S] delimStr)
  • [0062]
    Return the string portion before the specified delimiter sequence. Returns ″″ if not found.
  • [0063]
    5) [S] $TextBetween([S] srcStr,[S] startStr,[S] endStr)
  • [0064]
    Return the string portion between the specified delimiter sequences. Returns“” if not found.
  • [0065]
    6) [I] $Integer([S] aString)
  • [0066]
    Convert the specified string to an integer (decimal or hex)
  • [0067]
    7) [F] $Real([S] aString)
  • [0068]
    Convert the specified string to a real number
  • [0069]
    6) [I] $IntegerWithin([S] aString,[I] n)
  • [0070]
    Extract the n'th integer (decimal or hex, n=1 . . . ) within the specified arbitrary string
  • [0071]
    7) [F] $RealWithin([S] aString,[I] n)
  • [0072]
    Extract the n'th real (n=1 . . . ) within the specified arbitrary string
  • [0073]
    8) [S] $StripMarkup([S] aString)
  • [0074]
    Strip any Markup language tags out of a string to yield plain text.
  • [0075]
    9) [S] $SourceName( )
  • [0076]
    Inserts the current value of ‘languageName’
  • [0077]
    10) [S] $SetPersRefInfo([S] aString)
  • [0078]
    This function allows you to append to the contents of the ‘stringH’ field of a persistent reference field rather than assigning to the name. The function result is equal to ‘aString’ but the next assignment made by the parser will be to the ‘stringH’ sub-field, not the ‘name’ sub-field.
  • [0079]
    11) [S] $FirstCapOnly([S] aString)
  • [0080]
    Converts a series of words in upper/lower case such that each word starts with an upper case character and all subsequent characters are lower case.
  • [0081]
    12) [S] $TextNotAfter([S] srcStr,[S] delimStr)
  • [0082]
    Similar in operation to $TextBefore( ) except if ‘delimStr’ is not found, the original string is returned un-altered.
  • [0083]
    13) [S] $TextNotBefore([S] srcStr,[S] delimStr)
  • [0084]
    Similar in operation to $TextAfter( ) except if ‘delimStr’ is not found, the original string is returned un-altered.
  • [0085]
    14) [S] $TextNotBetween([S] srcStr,[S] startStr,[S] endStr)
  • [0086]
    Returns what remains after removing the string portion between the specified delimiter sequences (and the delimiter sequences themselves). If the sequence is not found, the original string is returned un-altered.
  • [0087]
    15) [S] $TruncateText([S] srcStr,[I] numChars)
  • [0088]
    Truncated the source string to the specified number of characters.
  • [0089]
    16) [S] $TextBeforeNumber([S] srcStr)
  • [0090]
    This function is similar in operation to $TextBefore( ) but the ‘delimStr’ is taken to be the first numeric digit encountered.
  • [0091]
    17) [S] $TextWithout([S] srcStr,[S] sequence)
  • [0092]
    This function removes all occurrences of the specified sequence from the source string.
  • [0093]
    18) [S] $WordNumber([S] srcStr,[I] number)
  • [0094]
    This function gets the specified word (starting from 1) from the source string. If ‘number’ is negative, the function counts backward from the last word in the source string.
  • [0095]
    19) [S] $Ask([S] promptStr)
  • [0096]
    This function prompts the user using the specified string and allows him to enter a textual response which is returned as the function result.
  • [0097]
    20) [S] $TextWithoutBlock([S] srcStr,[S] startDelim,[S] endDelim)
  • [0098]
    This function removes all occurences of the delimited text block (including delimiters) from the source string.
  • [0099]
    21) [S] $ReplaceSequence([S] srcStr,[S] sequence,[S] nuSequence)
  • [0100]
    This function replaces all occurences of the target sequence by the sequence ‘nuSequence’ within the given string.
  • [0101]
    22) [S] $AppendIfNotPresent([S] srcStr,[S] endDelim)
  • [0102]
    This function determines if ‘srcStr’ ends in ‘endDelim’ and if not appends ‘endDelim’ to ‘srcStr’ returning the result.
  • [0103]
    23) [S] $ProperNameFilter([S] srcStr,[I] wordMax,[S] delim)
  • [0104]
    This function performs the following processing (in order) designed to facilitate the removal of extraneous strings of text from ‘delim’ separated lists of proper names (i.e., capitalized first letter words):
  • [0105]
    a) if the first non-white character in a ‘delim’ bounded block is not upper case, remove the entire string up to and including the trailing occurence of ‘delim’ (or end of string).
  • [0106]
    b) for any ‘delim’ bounded block, strip off all trailing words that start with lower case letters.
  • [0107]
    c) if more than ‘wordMax’ words beginning with a lower case letter occur consecutively between two occurrences of ‘delim’, terminate the block at the point where the consecutive words occur.
  • [0108]
    24) [S] $Sprintf([S] formatStr, . . . )
  • [0109]
    This function performs a C language sprintf( ) function, returning the generated string as its result.
  • [0110]
    25) [S] $ShiftChars([S] srcStr,[I] delta)
  • [0111]
    This function shifts the character encoding of all elements of ‘srcStr’ by the amount designated in ‘delta’ returning the shifted string as a result. This functionality can be useful for example when converting between upper and lower case.
  • [0112]
    26) [S] $FlipChars([S] srcStr)
  • [0113]
    This function reverses the order of all characters in ‘srcStr’.
  • [0114]
    27) [S] $ReplaceBlockDelims([S] srcStr,[S] startDelim,[S] endDelim,[S] nuStartDelim,[S] nuEndDelim,[I] occurence,[I] reverse)
  • [0115]
    This function replaces the start and end delimiters of one or more delimited blocks of text by the new delimiters specified. If ‘occurence’ is zero, all blocks found are processed, otherwise just the block specified (starting from 1). If ‘reverse’ is non-zero (i.e.,1), this function first locates the ending delimiter and then works backwards looking for the start delimiter. Often if the start delimiter is something common like a space character (e.g., looking for the last word of a sentence), the results of this may be quite different from those obtained using ‘reverse’=0.
  • [0116]
    28) [S] $RemoveIfFollows([S] srcStr,[S] endDelim)
  • [0117]
    This function determines if ‘srcStr’ ends in ‘endDelim’ and if so removes ‘endDelim’ from ‘srcStr’ returning the result.
  • [0118]
    29) [S] $RemoveIfStarts([S] srcStr,[S] startDelim)
  • [0119]
    This function determines if ‘srcStr’ starts with ‘startDelim’ and if so removes ‘startDelim’ from ‘srcStr’ returning the result.
  • [0120]
    30) [S] $PrependIfNotPresent([S] srcStr,[S] startDelim)
  • [0121]
    This function determines if ‘srcStr’ starts with ‘startDelim’ and if not prepends ‘startDelim’ to ‘srcStr’ returning the result.
  • [0122]
    31) [S] $NoLowerCaseWords([S] srcStr)
  • [0123]
    This function eliminates all words beginning with lower case letters from ‘srcStr’ returning the result.
  • [0124]
    32) [S] $ReplaceBlocks([S] srcStr,[S] startDelim,[S] endDelim,[I] occurence,[S] nuSequence)
  • [0125]
    This function replaces one or all blocks delimited by the specified delimiter sequences with the replacement sequence specified. If ‘occurrence’ is zero, all blocks are replaced, otherwise the occurrence is a one-based index to the block to replace.
  • [0126]
    33) [S] $AppendIfNotFollows([S] srcStr,[S] endDelim)
  • [0127]
    This function determines if ‘srcStr’ ends in ‘endDelim’ and if not appends ‘endDelim’ to ‘srcStr’ returning the result.
  • [0128]
    34) [I] $WordCount([S] srcStr)
  • [0129]
    This function counts the number of words in the source string, returning the numeric result.
  • [0130]
    35) [S] $PreserveParagraphs([S] srcStr)
  • [0131]
    This function eliminates all line termination characters (replacing them by spaces) in the source string other than those that represent paragraph breaks. Source text has often been formatted to fit into a fixed page width (e.g., 80 characters) and since we wish the captured text to re-size to fit whatever display area is used, it is often necessary to eliminate the explicit line formatting from large chunks of text using this function. A paragraph is identified by a line termination immediately followed by a tab or space character (also works with spaces for right justified scripts), all other explicit line formatting is eliminated. The resulting string is returned.
  • [0132]
    36) [I] $StringSetIndex([S] srcStr,[I] ignoreCase,[S] setStr1 . . . [S] setStrN)
  • [0133]
    This function compares ‘srcStr’ to each of the elements in the set of possible match strings supplied, returning the index (starting from 1) of the match string found, or zero if no match is found. If ‘ignoreCase’ is non-zero, the comparisons are case insensitive, otherwise they are exact.
  • [0134]
    37)[S] $IndexStringSet([I] index,[S] setStr1 . . . [S] setStrN)
  • [0135]
    This function selects a specific string from a given set of strings by index (1-based), returning as a result the selected string. If the index specified is out of range, an empty string is returned.
  • [0136]
    38) [S] $ReplaceChars([S] srcStr,[S] char,[S] nuChar)
  • [0137]
    This function replaces all occurrences of ‘char’ in the string by ‘nuChar’ returning the modified string as a result.
  • [0138]
    39) [S] $Sentence([S] srcStr,[I] index)
  • [0139]
    This function extracts the designated sentence (indexing starts from 0) from the string, returning as a result the sentence. If the index specified is negative, the index counts backwards from the end (i.e., −1 is the last sentence etc.). A sentence is identified by any sequence of text terminated by a period.
  • [0140]
    40) [S] $FindHyperlink([S] srcStr,[S] domain, [I] index)
  • [0141]
    This function will extract the index'th hyperlink in the hyperlink domain specified by ‘domain’ that exists in ‘srcStr’ (if any) and return as a result the extracted hyperlink name. This technique can be used to recognize known things (e.g., city or people names) in an arbitrary block of text. If no matching hyperlink is found, the function result will be an empty string.
  • [0142]
    41) [S] $AssignRefType([S] aString)
  • [0143]
    This function allows you to assign directly to the typeID sub-field of a persistent reference field rather than assigning to the name. The function result is equal to ‘aString’ but the next assignment made by the parser will be to the typeID sub-field ‘aString’ is assumed to be a valid type name), not the ‘name’ sub-field.
  • [0144]
    42) [I] $RecordCount( )
  • [0145]
    This function returns the number of records created so far during the current mining process.
  • [0146]
    43) [S] $Exit([S] aReason)
  • [0147]
    Calling this function causes the current parsing run to exit cleanly, possibly displaying a reason for the exit (to the console) as specified in the ‘aReason’ string (NULL if no reason given).
  • [0148]
    44) [I] $MaxRecords( )
  • [0149]
    This function returns the maximum number of records to be extracted for this run. This value can either be set by calling $SetMaxRecords( ) or it may be set by external code calling MN_SetMaxRecords( ).
  • [0150]
    45) [I] $SetMaxRecords([I] max)
  • [0151]
    This function sets the maximum number of records to be extracted for this run. See $MaxRecords( ) for details.
  • [0152]
    46) [I] $FieldSize([S] fieldName)
  • [0153]
    This function returns the size in bytes of the field specified in the currently active type record as set by the preceeding <@1:4:typeName> operator. Remember that variable sized string fields (i.e., char @fieldName) and similar will return a size of sizeof(Ptr), not the size of the string within it.
  • [0154]
    47) [I] $TextContains([S] srcText,[S] subString)
  • [0155]
    This function returns 0 if the ‘srcText’ does not contain ‘subString’, otherwise it returns the character index within ‘srctext’ where ‘subString’ starts+1.
  • [0156]
    48) [I] $ZapRegisters([S] minReg,[S] maxReg)
  • [0157]
    This function empties the contents of all registers starting from ‘minReg’ and ending on ‘maxReg’. The parameters are simply the string equivalent of the register name (e.g., “$aa”). When processing multiple records, the use of $ZapRegisters( ) is often more convenient than explicit register assignments to ensure that all the desired registers start out empty as record processing begins. The result is the count of the number of non-empty registers that were zapped.
  • [0158]
    49) [I] $CRCString([S] srcText)
  • [0159]
    This function performs a 32-bit CRC similar to ANSI X3.66 on the text string supplied, returning the integer CRC result. This is can be useful when you want to turn an arbitrary (i.e., non-alphanumeric) string into a form that is (probably!) unique for name generating or discriminating purposes.
  • [0160]
    Note that parameters to routines may be either constants (of integer, real or string type), field specifiers referring to fields within the current record being extracted, registers, $ (the currently extracted field value), or evaluated expressions which may include embedded calls to other functions (built-in or otherwise). This essentially creates a complete programming language for the extraction of data into typed structures and collections. The C** programming language provided by the <@1:5> plug-ins differs from a conventional programming language in that the order of execution of the statements is determined by the BNF for the language and the contents of the data file being parsed. In the preferred embodiment, the MitoMine™ parser is capable of recognizing and evaluating the following token types:
  • [0161]
    3—DecInt—syntax as for a C strtoul( ) call but ignores embedded commas.
  • [0162]
    4—Real—real—as for C strtod( )
  • [0163]
    5—Real—real scientific format—as for C strtod( )
  • [0164]
    The plug-in 5 MitoMine™ parser, in addition to recognizing registers, $, $function names, and type field specifications, can also preferably recognize and assign the following token types:
  • [0165]
    2—character constant (as for C)
  • [0166]
    7—Hex integer (C format)
  • [0167]
    3—decimal integer (as for C strtoul)
  • [0168]
    10—octal integer (as for strtoul)
  • [0169]
    4—real (as for strtod)
  • [0170]
    5—real with exponent (as for strtod)
  • [0171]
    12—string constant (as for C).
  • [0172]
    Character constants can be a maximum of 8 characters long, during input, they are not sign extended. The following custom parser options would preferably be supported:
  • [0173]
    kTraceAssignments (0x00010000)—Produces a trace of all <@1:5> assignments on the console
  • [0174]
    kpLineTrace (0x00020000)—Produces a line trace on the console
  • [0175]
    kTraceTokens (0x00040000)—Produces a trace of each token recognized
  • [0176]
    These options may be specified for a given parser language by adding the corresponding hex value to the parser options line. For example, the specification below would set kTraceAssignments+kpLineTrace options in addition to those supported by the basic parse package:
  • =0x30000+kPreserveBNFsymbols+kBeGreedyParser
  • [0177]
    The lexical analyzer options line can also be used to specify additional white-space and delimiter characters to the lexical analyzer as a comma separated list. For example the specification below would cause the characters ‘a’ and ‘b’ to be treated as whitespace (see LX_AddWhiteSpace) and the characters ‘Y’ and ‘Z’ to be treated as delimiters (see LX_AddDelimiter).
  • =kNoCaseStates+whitespace(a,b)+delimiter(Y,Z)
  • [0178]
    Appendix A provides a sample of the BNF and LEX specifications that define the syntax of the <@1:5> plug-in (i.e., C**) within MitoMine™ (see Parser Patent for further details). Note that most of the functionality of C** is already provided by the predefined plug-in functions (plug-in 0) supplied by the basic parser package. A sample implementation of the <@1:5> plug-in one and a sample implementation of a corresponding resolver function are also provided.
  • [0179]
    As described previously, the lexical and BNF specifications for the outermost parser vary depending on the source being processed (example given below), however the outer parser also has a single standard plug-in and resolver. A sample implementation of the standard plug-in one and a sample implementation of a corresponding resolver function are also provided in Appendix A.
  • [0180]
    The listing below gives the API interface to the MitoMine™ capability for the preferred embodiment although other forms are obviously possible. Appendix A provides the sample pseudo code for the API interface.
  • [0181]
    In the preferred embodiment, a function, hereinafter called MN_MakeParser( ), initializes an instance of the MitoMine™ and returns a handle to the parser database which is required by all subsequent calls. A ‘parserType’ parameter could be provided to select a particular parsing language to be loaded (see PS_LoadBNF) and used.
  • [0182]
    In the preferred embodiment, a function, hereinafter called MN_SetRecordAdder( ) determines how (or if) records once parsed are added to the collection. The default record adder creates a set of named lists where each list is named after the record type it contains.
  • [0183]
    In the preferred embodiment, a function, hereinafter called MN_SetMineFunc( ), sets the custom mine function handler for a MitoMine™ parser. Additional functions could also be defined over and above those provided by MitoMine™ within the <@1:5: . . . > plugin context. A sample mine function handler follows:
    static Boolean myFunc  ( // custom function
    handler
      ET_ParseHdl     aParseDB, //IO:handle to parser
    DB
      int32     aContextID //I:context
    {cube root}  ) // R:TRUE for success
        p = (myContextPtr)aContextID; // get our context
    pointer
        opCount = PS_GetOpCount(aParseDB,TOP); // get # of operands
        tokp = PS_GetToken(aParseDB,opCount); // get fn name
        for ( i = 0 ; i < opCount ; i++ )
         if ( ?PS_EvalIdent(aParseDB, i) ) // eval all elements on
    stack
         {
      res = NO;
      goto BadExit;
         }
        if ( ?US_strcmp(tokp, ″$myFuncName″) ) // function name
        {
         -- check operand count and type
         -- implement function
         -- set resulting value into stack ′opCount′ e.g.:
    PS_SetiValue(aParseDB,opCount,result);
        else if ( ?US_strcmp(tokp, ″$another function″) )
  • [0184]
    In the preferred embodiment, a function, hereinafter called MN_SetMaxRecords( ), sets the maximum number of records to be mined for a MitoMine™ parser. This is the number returned by the built-in function $GetMaxRecords( ). If the maximum number of records is not set (i.e., is zero), all records are mined until the input file(s) is exhausted.
  • [0185]
    In the preferred embodiment, a function, hereinafter called MN_SetMineLineFn( ), sets the MitoMine™ line processing function for a given MitoMine™ parser. A typical line processing function might appear as follows:
    static void myLineFn    ( // Built-in debugging mine-line fn
      ET_ParseHdl     aParseDB,  // I:Parser DB
       int32 aContextID, // I:Context
       int32 lineNum, // I:Current line number
       charPtr lineBuff, // IO:Current line buffer
       charPtr aMineLineParam // I:String parameter to function
    ) // R:void
  • [0186]
    These functions can be used to perform all kinds of different useful functions such as altering the input stream before the parse sees it, adjusting parser debugging settings, etc. The ‘aMineLineParam’ parameter above is an arbitrary string and can be formatted any way you wish in order to transfer the necessary information to the line processing function. The current value of this parameter is set using MN_SetMineLineParam( ).
  • [0187]
    In the preferred embodiment, a function, hereinafter called MN_SetMineLineParam( ), sets the string parameter to a MitoMine™ line processing function.
  • [0188]
    In the preferred embodiment, two functions, hereinafter calleds MN_SetParseTypeDB( ) and MN_GetParseTypeDB( ), can be used to associate a type DB (probably obtained using MN_GetMineLanguageTypeDB) with a MitoMine™ parser. This is preferable so that the plug-ins associated with the extraction process can determine type information for the structures unique to the language. In the preferred embodiment, the function MN_GetParseTypeDB( ) would return the current setting of the parser type DB.
  • [0189]
    In the preferred embodiment, a function, hereinafter called MN_SetFilePath( ), sets the current file path associated with a MitoMine™ parser.
  • [0190]
    In the preferred embodiment, a function, hereinafter called MN_GetFilePath( ), gets the current file path associated with a MitoMine™ parser.
  • [0191]
    In the preferred embodiment, a function, hereinafter called MN_SetCustomContext( ), may be used to get the custom context value associated with a given MitoMine™ parser. Because MitoMine™ itself uses the parser context (see PS_SetContextID), it provides this alternative API to allow custom context to be associated with a parser.
  • [0192]
    In the preferred embodiment, a function, hereinafter called MN_GetCustomContext( ), may be used to get the custom context value associated with a given MitoMine™ parser. Because MitoMine™ itself uses the parser context (see PS_SetContextID), it provides this alternative API to allow custom context to be associated with a parser.
  • [0193]
    In the preferred embodiment, a function, hereinafter called MN_GetParseCollection( ), returns the collection object associated with a parser. MN_SetParseCollection( ) allows this value to be altered. By calling MN_SetParseCollection( . . . ,NULL) it is possible to detach a collection from the parser in cases where you wish the collection to survive the parser teardown process.
  • [0194]
    In the preferred embodiment, a function, hereinafter called MN_SetParseCollection( ), returns the collection object associated with a parser. MN_SetParseCollection( ) allows this value to be altered. By calling MN_SetParseCollection( . . . ,NULL) it is possible to detach a collection from the parser. This would be useful in cases where it is preferable to permit the collection to survive the parser teardown process.
  • [0195]
    In the preferred embodiment, a function, hereinafter called MN_GetMineLanguageTypeDB( ), returns a typeDB handle to the type DB describing the structures utilized by the specified mine language. If the specified typeDB already exists, it is simply returned, otherwise a new type DB is created by loading the type definitions from the designated MitoMine™ type specification file.
  • [0196]
    In the preferred embodiment, a function, hereinafter called MN_KillParser( ), disposes of the Parser database created by MN_MakeParser( ). A matching call to MN_KillParser( ) must exist for every call to MN_MakeParser( ). This call would also invoke MN_CleanupRecords( ) for the associated collection.
  • [0197]
    In the preferred embodiment, a function, hereinafter called MN_Parse( ), invokes the MitoMine™ parser to process the designated file. The function is passed a parser database created by a call to MN_MakeParser( ). When all calls to MN_Parse( ) are complete, the parser database must be disposed using MN_KillParser( ).
  • [0198]
    In the preferred embodiment, a function, hereinafter called MN_RunMitoMine( ), creates the selected MitoMine™ parser on the contents of a string handle. An parameter could also be passed to the NMN_MakeParser( ) call and can thus be used to specify various debugging options.
  • [0199]
    In the preferred embodiment, a function, hereinafter called MN_CleanupRecords( ), cleans up all memory associated with the set of data records created by a call to MN_RunMitoMine( ).
  • [0200]
    In the preferred embodiment, a function, hereinafter called MN_RegisterMineMuncher( ), can be used to register by name a function to be invoked to post process the set of records created after a successfull MitoMine™ run. The name of the registered Muncher function would preferably match that of the mining language (see MN_Parse for details). A typical mine-muncher function might appear as follows:
    static ET_CollectionHdl myMuncher( // My Mine Muncher function
        ET_MineScanRecPtr scanP, // IO:Scanning context record
        ET_CollectionHdl theRecords, // I:Collection of parsed records
        char typeDBcode, 1/ I:The typeDB code
        charPtr parserType, // I:The parser type/language name
        ET_Offset root, // I:Root element designator
        charPtr customString // I:Avail pass cstm strig to muncher
    ) // R:The final collection
  • [0201]
    The ‘scanP’ parameter is the same ‘scanP’ passed to the file filter function and can thus be used to communicate between file filters and the muncher or alternatively to clean up any leftovers from the file filters within the ‘muncher’. Custom ‘muncher’ functions can be used to perform a wide variety of complex tasks, indeed the MitoMine™ approach has been used successfully to extract binary (non-textual) information from very complex sources, such as encoded database files, by using this technique.
  • [0202]
    In the preferred embodiment, a function, hereinafter called MN_DeRegisterMineMuncher( ), de-registers a previously registered mine muncher function.
  • [0203]
    In the preferred embodiment, a function, hereinafter called MN_InvokeMineMuncher( ), invokes the registered ‘muncher’ function for the records output by a run of MitoMine (see MN_RunMitoMine). If no function is registered, the records and all associated memory are simply disposed using MN_CleanupRecords( ).
  • [0204]
    In the preferred embodiment, a function, hereinafter called MN_RegisterFileFilter( ), can be used to register by name a file filter function to be invoked to process files during a MitoMine™ run. If no file filter is registered, files are treated as straight text files, otherwise the file must be loaded and pre/post processed by the file filter. A typical file filter function might appear as follows:
    static EngErr myFileFilter ( // Scan files and mine if
    appropr
      HFileInfo *aCatalogRec, // IO:The catalog search
    record
      int32Ptr flags, // IO:available for flag
    use
      ET_MineScanRecPtr scanP // IO:Scanning context
    record
    ) // R:zero for success, else
    error #
  • [0205]
    In the preferred embodiment, a function, hereinafter called MN_ListFileFilters( ),obtains a string list of all know MitoMine™ file filter functions.
  • [0206]
    In order to illustrate how MitoMine™ is used to extract information from a given source and map it into its ontological equivalent, we will use the example of the ontological definition of the Country record pulled from the CIA World Fact book. The extract provided in Appendix B is a portion of the first record of data for the country Afganistan taken from the 1998 edition of this CD-ROM. The format of the information in this case appears to be a variant of SGML, but it is clear that this approach applies equally to almost any input format. The lexical analyzer and BNF specification for the parser to extract this source into a sample ontology are also provided in Appendix B. The BNF necessary to extract country information into a sample ontology is one of the most complex scripts thus far encountered in MitoMine™ applications due to the large amount of information that is being extracted from this source and preserved in the ontology. Because this script is so complex, it probably best illustrates a less than ideal data-mining scenario but also demonstrates use of a large number of different built-in mining functions. Some of the results of running the extraction script below can be seen in the Ontology patent relating to auto-generated UI.
  • [0207]
    Note that in the BNF provided in Appendix B, a number of distinct ontological items are created, not just a country. The BNF starts out by creating a “Publication” record that identifies the source of the data injested, it also creates a “Government” record, which is descended from Organization. The Government record is associated with the country and forms the top level of the description of the government/organization of that country (of which the military branches created later are a part). In addition, other records could be created and associated with the country, for example the “opt_figure” production is assigning a variety of information to the ‘stringH’ field of the “mapImage” field that describes a persistent reference to the file that contains the map image. When the data produced by this parse is written to persistent storage, this image file is also copied to the image server and through the link created, can be recalled and displayed whenever the country is displayed (as is further demonstrated in the UI examples of the Ontology Patent). In fact, as a result of extracting a single country record, perhaps 50-100 records of different types are created by this script and associated in some way with the country including government personel, international organizations, resources, poulation records, images, cities and ports, neighboring countries, treaties, notes, etc. Thus it is clear that what was flat, un-related information in the source has been converted to richly interconnected, highly computable and usable ontological information after the extraction completes. This same behavior is repeated for all the diverse sources that are mined into any given system the information from all such sources becomes cross-correlated and therefore infinitely more useful that it was in its separate, isolated form. The power of this approach over conventional data mining technologies is clear.
  • [0208]
    The foregoing description of the preferred embodiments of the invention has been presented for the purposes of illustration and description. For example, although described with respect to the C* programming language, any programming language that includes the appropriate extentions could be used to implement this invention. Additionally, the claimed system and method should not be limited to the particular API disclosed. The descriptions of the header structures should also not be limited to the embodiments described. While the sample pseudo code provides examples of the code that may be used, the plurality of implementations that could in fact be developed is nearly limitless. For these reasons, this description is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto.

Claims (26)

  1. 1) A system for the extraction of data from a variety of sources into a single unifying ontology, comprising:
    a) an ontology based environment, such environment including an ontology description language (ODL) and a run-time accessible types system;
    b) logically connected thereto, an extensible, parsing environment, wherein such parsing environment supports customized reverse-polish plug-in operators;
    c) logically connected thereto, a configurable outer parser capable of accepting a BNF (or equivalent) specification describing the source data format;
    d) an embedded inner parser capable of executing statements and performing actions directly on the objects and types described by the system ontology.
  2. 2) The system of claim 1, further comprising a memory system logically connected thereto, for storing and managing persistent data being processed by the system.
  3. 3) The system of claim 1, wherein the ontology-based environment is the ontology environment described in the Ontology Patent.
  4. 4) The system of claim 1, wherein the run-time accessible types system is the run-time accessible types system described in the Types Patent.
  5. 5) The system of claim 1, wherein the parsing environment is the parsing environment described in the Parse Patent.
  6. 6) The system of claim 2, wherein the memory system uses the memory system and model described in the Memory Patent.
  7. 7) The system of claim 1, wherein the outer parser is capable of accepting a BNF specification containing specifications for embedded plug-ins.
  8. 8) The system of claim 7, wherein the outer parser is capable of accepting a BNF specification containing specification(s) for embedded plug-ins that are passed textual strings consisting of interpretable source statements.
  9. 9) The system of claim 7, wherein the embedded inner parser is capable of being invoked by one or more the plug-in(s) in the outer parser, wherein the specification for such plug-ins is stored in the BNF specification.
  10. 10) The system of claim 1, further comprising a line processor function, wherein such function permits pre-examination and alteration of the lines appearing in the source data before such data is processed by the parser.
  11. 11) The system of claim 2, further comprising one or more post-processor functions (munchers), wherein such munchers are registered on the system and are able to perform arbitrary operations on a collection of extracted ontological records prior to their instantiation into persistent storage by the memory system.
  12. 12) The system of claim 1, wherein both parsers are logically connected to a common environment, wherein such comment environment contains a set of assignable and readable registers whose type adapts automatically to any data item assigned to such registers and which registers are persistent in the common enviroment so that they may be used to store the current state of the parsers.
  13. 13) The system of claim 1, wherein system can be invoked to mine data from a given source based on actions in a user interface.
  14. 14) The system of claim 1, wherein the system can be registered with a running server process connected to a data source in order to allow that server to extract ontological information from the data source on a continuous un-attended basis.
  15. 15) A method for the extracting data from a variety of sources into a single unifying ontology, comprising the steps of:
    a) receiving source data;
    b) parsing the source format with an outer parser, wherein such outer parser includes an embedded parser for an interpreted ontology descriptions language (ODL);
    c) parsing the source data with the outer parser and embedded parser using the parsed source format;
    d) passing statements in an embedded language to the embedded parser;
    e) responsive to one or more actions by the outer parser, executing one or more statements in the embedded language.
  16. 16) The method of claim 15, wherein the step of parsing includes the step of receiving a BNF specification.
  17. 17) The method of claim 16, wherein the step of parsing includes the step of receiving a BNF specification that includes specifications for embedded plug-ins.
  18. 18) The method of claim 17, further comprising the step of passing one or more textual strings to the embedded plug-ins specified in the received BNF specification.
  19. 19) The method of claim 18, wherein the step of passing one or more textual strings to the embedded plug-ins includes passing interpretable ODL statements.
  20. 20) The method of claim 18, further comprising the step of executing one or more statements ODL statements.
  21. 21) The method of claim 20, wherein the step of executing one or more statements comprises ordering the execution of such statements based on the progress of the step of parsing.
  22. 22) The method of claim 15, further comprising the step of altering the source data before such data is parsed by the parsers.
  23. 23) The method of claim 15, further comprising the step of creating a collection of ontological records.
  24. 24) The method of claim 23, further comprising the step of instantiating the collection of ontological records created by the method into persistent storage.
  25. 25) The method of claim 24, further comprising the step of registering one or more munchers on the system, wherein such munchers are able to perform arbitrary operations on the collection of ontological records prior to their instantiation into persistent storage
  26. 26) The method of claim 15, further comprising the step of registering the method with a server process connected to a data source, such that the server process is able to extract ontological information from the data source on a continuous un-attended basis.
US10357290 2002-02-01 2003-02-03 System and method for mining data Abandoned US20030172053A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US35348702 true 2002-02-01 2002-02-01
US10357290 US20030172053A1 (en) 2002-02-01 2003-02-03 System and method for mining data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10357290 US20030172053A1 (en) 2002-02-01 2003-02-03 System and method for mining data
US11455304 US7533069B2 (en) 2002-02-01 2006-06-16 System and method for mining data

Publications (1)

Publication Number Publication Date
US20030172053A1 true true US20030172053A1 (en) 2003-09-11

Family

ID=27663215

Family Applications (14)

Application Number Title Priority Date Filing Date
US10357304 Active 2024-08-09 US7308449B2 (en) 2002-02-01 2003-02-03 System and method for managing collections of data on a network
US10357325 Active 2023-06-05 US7158984B2 (en) 2002-02-01 2003-02-03 System for exchanging binary data
US10357286 Abandoned US20040024720A1 (en) 2002-02-01 2003-02-03 System and method for managing knowledge
US10357289 Active 2025-05-02 US7369984B2 (en) 2002-02-01 2003-02-03 Platform-independent real-time interface translation by token mapping without modification of application code
US10357284 Active 2026-05-11 US7555755B2 (en) 2002-02-01 2003-02-03 System and method for navigating data
US10357288 Active 2024-04-10 US7103749B2 (en) 2002-02-01 2003-02-03 System and method for managing memory
US10357283 Active 2024-08-23 US7240330B2 (en) 2002-02-01 2003-02-03 Use of ontologies for auto-generating and handling applications, their persistent storage, and user interfaces
US10357259 Active 2024-11-25 US7143087B2 (en) 2002-02-01 2003-02-03 System and method for creating a distributed network architecture
US10357326 Active 2024-10-15 US7328430B2 (en) 2002-02-01 2003-02-03 Method for analyzing data and performing lexical analysis
US10357324 Active 2025-01-09 US7210130B2 (en) 2002-02-01 2003-02-03 System and method for parsing data
US10357290 Abandoned US20030172053A1 (en) 2002-02-01 2003-02-03 System and method for mining data
US11455304 Active US7533069B2 (en) 2002-02-01 2006-06-16 System and method for mining data
US11484220 Active - Reinstated 2025-05-17 US7685083B2 (en) 2002-02-01 2006-07-10 System and method for managing knowledge
US11776299 Active 2026-05-09 US8099722B2 (en) 2002-02-01 2007-07-11 Method for analyzing data and performing lexical analysis

Family Applications Before (10)

Application Number Title Priority Date Filing Date
US10357304 Active 2024-08-09 US7308449B2 (en) 2002-02-01 2003-02-03 System and method for managing collections of data on a network
US10357325 Active 2023-06-05 US7158984B2 (en) 2002-02-01 2003-02-03 System for exchanging binary data
US10357286 Abandoned US20040024720A1 (en) 2002-02-01 2003-02-03 System and method for managing knowledge
US10357289 Active 2025-05-02 US7369984B2 (en) 2002-02-01 2003-02-03 Platform-independent real-time interface translation by token mapping without modification of application code
US10357284 Active 2026-05-11 US7555755B2 (en) 2002-02-01 2003-02-03 System and method for navigating data
US10357288 Active 2024-04-10 US7103749B2 (en) 2002-02-01 2003-02-03 System and method for managing memory
US10357283 Active 2024-08-23 US7240330B2 (en) 2002-02-01 2003-02-03 Use of ontologies for auto-generating and handling applications, their persistent storage, and user interfaces
US10357259 Active 2024-11-25 US7143087B2 (en) 2002-02-01 2003-02-03 System and method for creating a distributed network architecture
US10357326 Active 2024-10-15 US7328430B2 (en) 2002-02-01 2003-02-03 Method for analyzing data and performing lexical analysis
US10357324 Active 2025-01-09 US7210130B2 (en) 2002-02-01 2003-02-03 System and method for parsing data

Family Applications After (3)

Application Number Title Priority Date Filing Date
US11455304 Active US7533069B2 (en) 2002-02-01 2006-06-16 System and method for mining data
US11484220 Active - Reinstated 2025-05-17 US7685083B2 (en) 2002-02-01 2006-07-10 System and method for managing knowledge
US11776299 Active 2026-05-09 US8099722B2 (en) 2002-02-01 2007-07-11 Method for analyzing data and performing lexical analysis

Country Status (3)

Country Link
US (14) US7308449B2 (en)
EP (1) EP1527414A2 (en)
WO (12) WO2003065180A3 (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060004827A1 (en) * 2004-05-07 2006-01-05 International Business Machines Corporation XML based scripting language
US20060190452A1 (en) * 2005-02-24 2006-08-24 Microsoft Corporation Sort digits as number collation in server
US20090083195A1 (en) * 2007-09-25 2009-03-26 Andrew Aymeloglu Feature-based similarity measure for market instruments
US20090228507A1 (en) * 2006-11-20 2009-09-10 Akash Jain Creating data in a data store using a dynamic ontology
US20100235315A1 (en) * 2009-03-10 2010-09-16 Karen Swenson Systems and Methods for Address Intelligence
US20110035390A1 (en) * 2009-08-05 2011-02-10 Loglogic, Inc. Message Descriptions
US8855999B1 (en) 2013-03-15 2014-10-07 Palantir Technologies Inc. Method and system for generating a parser and parsing complex data
US8903717B2 (en) 2013-03-15 2014-12-02 Palantir Technologies Inc. Method and system for generating a parser and parsing complex data
US8909656B2 (en) 2013-03-15 2014-12-09 Palantir Technologies Inc. Filter chains with associated multipath views for exploring large data sets
US8930897B2 (en) 2013-03-15 2015-01-06 Palantir Technologies Inc. Data integration tool
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US9081975B2 (en) 2012-10-22 2015-07-14 Palantir Technologies, Inc. Sharing information between nexuses that use different classification schemes for information access control
US9223773B2 (en) 2013-08-08 2015-12-29 Palatir Technologies Inc. Template system for custom document generation
US9229966B2 (en) 2008-09-15 2016-01-05 Palantir Technologies, Inc. Object modeling for exploring large data sets
US9229952B1 (en) 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
US9378524B2 (en) 2007-10-03 2016-06-28 Palantir Technologies, Inc. Object-oriented time series generator
US9576015B1 (en) 2015-09-09 2017-02-21 Palantir Technologies, Inc. Domain-specific language for dataset transformations
US9727560B2 (en) 2015-02-25 2017-08-08 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US9740369B2 (en) 2013-03-15 2017-08-22 Palantir Technologies Inc. Systems and methods for providing a tagging interface for external content
US9852205B2 (en) 2013-03-15 2017-12-26 Palantir Technologies Inc. Time-sensitive cube
US9880987B2 (en) 2011-08-25 2018-01-30 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US9898167B2 (en) 2013-03-15 2018-02-20 Palantir Technologies Inc. Systems and methods for providing a tagging interface for external content
US9898335B1 (en) 2012-10-22 2018-02-20 Palantir Technologies Inc. System and method for batch evaluation programs
US9922108B1 (en) 2017-01-05 2018-03-20 Palantir Technologies Inc. Systems and methods for facilitating data transformation
US9946777B1 (en) 2016-12-19 2018-04-17 Palantir Technologies Inc. Systems and methods for facilitating data transformation
US9984152B2 (en) 2014-12-15 2018-05-29 Palantir Technologies Inc. Data integration tool

Families Citing this family (696)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7668781B2 (en) * 1996-10-31 2010-02-23 Citicorp Development Center, Inc. Global method and system for providing enhanced transactional functionality through a customer terminal
US7249344B1 (en) 1996-10-31 2007-07-24 Citicorp Development Center, Inc. Delivery of financial services to remote devices
US6493698B1 (en) * 1999-07-26 2002-12-10 Intel Corporation String search scheme in a distributed architecture
US6351776B1 (en) 1999-11-04 2002-02-26 Xdrive, Inc. Shared internet storage resource, user interface system, and method
US20100185614A1 (en) 1999-11-04 2010-07-22 O'brien Brett Shared Internet storage resource, user interface system, and method
US20010048448A1 (en) 2000-04-06 2001-12-06 Raiz Gregory L. Focus state themeing
US6753885B2 (en) 2000-04-06 2004-06-22 Microsoft Corporation System and theme file format for creating visual styles
US7313692B2 (en) 2000-05-19 2007-12-25 Intertrust Technologies Corp. Trust management systems and methods
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US8402068B2 (en) 2000-12-07 2013-03-19 Half.Com, Inc. System and method for collecting, associating, normalizing and presenting product and vendor information on a distributed network
US7904595B2 (en) 2001-01-18 2011-03-08 Sdl International America Incorporated Globalization management system and method therefor
US7191141B2 (en) * 2001-06-13 2007-03-13 Ricoh Company, Ltd. Automated management of development project files over a network
US7406432B1 (en) 2001-06-13 2008-07-29 Ricoh Company, Ltd. Project management over a network with automated task schedule update
JP3773426B2 (en) * 2001-07-18 2006-05-10 株式会社日立製作所 Pretreatment methods and pretreatment system in data mining
US20030035582A1 (en) * 2001-08-14 2003-02-20 Christian Linhart Dynamic scanner
US7010779B2 (en) * 2001-08-16 2006-03-07 Knowledge Dynamics, Inc. Parser, code generator, and data calculation and transformation engine for spreadsheet calculations
US9189501B2 (en) * 2001-08-31 2015-11-17 Margaret Runchey Semantic model of everything recorded with UR-URL combination identity-identifier-addressing-indexing method, means, and apparatus
US7308449B2 (en) * 2002-02-01 2007-12-11 John Fairweather System and method for managing collections of data on a network
US8527495B2 (en) * 2002-02-19 2013-09-03 International Business Machines Corporation Plug-in parsers for configuring search engine crawler
JP4047053B2 (en) * 2002-04-16 2008-02-13 富士通株式会社 Search apparatus and method using sequence pattern comprising repeating
US6938239B2 (en) * 2002-04-18 2005-08-30 Wind River Systems, Inc. Automatic gopher program generator
US7359861B2 (en) * 2002-04-24 2008-04-15 Polyglot Systems, Inc. Inter-language translation device
US7210136B2 (en) * 2002-05-24 2007-04-24 Avaya Inc. Parser generation based on example document
US6996798B2 (en) * 2002-05-29 2006-02-07 Sun Microsystems, Inc. Automatically deriving an application specification from a web-based application
US7127520B2 (en) * 2002-06-28 2006-10-24 Streamserve Method and system for transforming input data streams
US7840550B2 (en) * 2002-08-13 2010-11-23 International Business Machines Corporation System and method for monitoring database queries
US7376696B2 (en) * 2002-08-27 2008-05-20 Intel Corporation User interface to facilitate exchanging files among processor-based devices
US20080313282A1 (en) 2002-09-10 2008-12-18 Warila Bruce W User interface, operating system and architecture
JP4369708B2 (en) * 2002-09-27 2009-11-25 パナソニック株式会社 Data processing equipment
EP1406183A3 (en) * 2002-10-01 2004-04-14 SAP Aktiengesellschaft Method and system for refreshing browser pages
US7913183B2 (en) * 2002-10-08 2011-03-22 Microsoft Corporation System and method for managing software applications in a graphical user interface
US9933911B2 (en) * 2002-10-08 2018-04-03 Microsoft Technology Licensing, Llc System and method for managing software applications in a graphical user interface
US7171652B2 (en) * 2002-12-06 2007-01-30 Ricoh Company, Ltd. Software development environment with design specification verification tool
JP4284497B2 (en) * 2003-01-29 2009-06-24 日本電気株式会社 Information sharing method, apparatus, and program
US9412141B2 (en) * 2003-02-04 2016-08-09 Lexisnexis Risk Solutions Fl Inc Systems and methods for identifying entities using geographical and social mapping
US7305391B2 (en) * 2003-02-07 2007-12-04 Safenet, Inc. System and method for determining the start of a match of a regular expression
US7451144B1 (en) * 2003-02-25 2008-11-11 At&T Corp. Method of pattern searching
US8271369B2 (en) * 2003-03-12 2012-09-18 Norman Gilmore Financial modeling and forecasting system
US7415672B1 (en) * 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US7350191B1 (en) 2003-04-22 2008-03-25 Noetix, Inc. Computer implemented system and method for the generation of data access applications
US7295852B1 (en) * 2003-05-01 2007-11-13 Palm, Inc. Automated telephone conferencing method and system
US7415484B1 (en) 2003-05-09 2008-08-19 Vignette Corporation Method and system for modeling of system content for businesses
US7660817B2 (en) * 2003-05-22 2010-02-09 Microsoft Corporation System and method for representing content in a file system
US7676486B1 (en) * 2003-05-23 2010-03-09 Vignette Software Llc Method and system for migration of legacy data into a content management system
US7404186B2 (en) * 2003-05-28 2008-07-22 Microsoft Corporation Signature serialization
JP2004362331A (en) * 2003-06-05 2004-12-24 Sony Corp Information processor and program
US7197746B1 (en) * 2003-06-12 2007-03-27 Sun Microsystems, Inc. Multipurpose lexical analyzer
US8095500B2 (en) * 2003-06-13 2012-01-10 Brilliant Digital Entertainment, Inc. Methods and systems for searching content in distributed computing networks
GB0314593D0 (en) * 2003-06-23 2003-07-30 Symbian Ltd A method of enabling an application to access files stored on a storage medium
US9565297B2 (en) 2004-05-28 2017-02-07 Oracle International Corporation True convergence with end to end identity management
US7873716B2 (en) * 2003-06-27 2011-01-18 Oracle International Corporation Method and apparatus for supporting service enablers via service request composition
US20050015340A1 (en) * 2003-06-27 2005-01-20 Oracle International Corporation Method and apparatus for supporting service enablers via service request handholding
US9038082B2 (en) 2004-05-28 2015-05-19 Oracle International Corporation Resource abstraction via enabler and metadata
EP1652043B1 (en) * 2003-07-11 2017-01-25 CA, Inc. System and method for common storage object model
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US8938595B2 (en) * 2003-08-05 2015-01-20 Sepaton, Inc. Emulated storage system
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US7237224B1 (en) * 2003-08-28 2007-06-26 Ricoh Company Ltd. Data structure used for skeleton function of a class in a skeleton code creation tool
US7793257B2 (en) * 2003-08-28 2010-09-07 Ricoh Company, Ltd. Technique for automating code generation in developing software systems
US7308675B2 (en) * 2003-08-28 2007-12-11 Ricoh Company, Ltd. Data structure used for directory structure navigation in a skeleton code creation tool
US7721254B2 (en) 2003-10-24 2010-05-18 Microsoft Corporation Programming interface for a computer platform
US20080059563A1 (en) * 2003-10-30 2008-03-06 Lavastorm Technologies, Inc. Methods and Systems for Automated Data Processing
WO2009025681A3 (en) * 2007-08-20 2009-08-27 James Heidenreich System to customize the facilitation of development and documentation of user thinking about an arbitrary problem
JP4637113B2 (en) * 2003-11-28 2011-02-23 キヤノン株式会社 Methods for constructing the preferred view of the hierarchical data
US7752603B2 (en) * 2003-12-08 2010-07-06 Notable Solutions, Inc. Systems and methods for data interchange among autonomous processing entities
US8548170B2 (en) 2003-12-10 2013-10-01 Mcafee, Inc. Document de-registration
US8656039B2 (en) 2003-12-10 2014-02-18 Mcafee, Inc. Rule parser
US7984175B2 (en) 2003-12-10 2011-07-19 Mcafee, Inc. Method and apparatus for data capture and analysis system
US7873541B1 (en) * 2004-02-11 2011-01-18 SQAD, Inc. System and method for aggregating advertising pricing data
US7430711B2 (en) * 2004-02-17 2008-09-30 Microsoft Corporation Systems and methods for editing XML documents
US20050192944A1 (en) * 2004-02-27 2005-09-01 Melodeo, Inc. A method and apparatus for searching large databases via limited query symbol sets
US8260764B1 (en) 2004-03-05 2012-09-04 Open Text S.A. System and method to search and generate reports from semi-structured data
US7966658B2 (en) * 2004-04-08 2011-06-21 The Regents Of The University Of California Detecting public network attacks using signatures and fast content analysis
US7627567B2 (en) * 2004-04-14 2009-12-01 Microsoft Corporation Segmentation of strings into structured records
US7398274B2 (en) * 2004-04-27 2008-07-08 International Business Machines Corporation Mention-synchronous entity tracking system and method for chaining mentions
US7797333B1 (en) * 2004-06-11 2010-09-14 Seisint, Inc. System and method for returning results of a query from one or more slave nodes to one or more master nodes of a database system
US8266234B1 (en) 2004-06-11 2012-09-11 Seisint, Inc. System and method for enhancing system reliability using multiple channels and multicast
US8544001B2 (en) * 2004-06-15 2013-09-24 Wms Gaming Inc. Gaming software providing operating system independence
US20060010122A1 (en) * 2004-07-07 2006-01-12 International Business Machines Corporation System and method for improved database table record insertion and reporting
US20060020501A1 (en) * 2004-07-22 2006-01-26 Leicht Howard J Benefit plans
US20060026174A1 (en) * 2004-07-27 2006-02-02 Lundberg Steven W Patent mapping
CN1728135A (en) * 2004-07-30 2006-02-01 联发科技股份有限公司 Method accessing file stored in storage device
US20060036451A1 (en) 2004-08-10 2006-02-16 Lundberg Steven W Patent mapping
US8560534B2 (en) 2004-08-23 2013-10-15 Mcafee, Inc. Database for a capture system
US7949849B2 (en) 2004-08-24 2011-05-24 Mcafee, Inc. File system for a capture system
US7440888B2 (en) * 2004-09-02 2008-10-21 International Business Machines Corporation Methods, systems and computer program products for national language support using a multi-language property file
US20060053382A1 (en) * 2004-09-03 2006-03-09 Biowisdom Limited System and method for facilitating user interaction with multi-relational ontologies
US7493333B2 (en) 2004-09-03 2009-02-17 Biowisdom Limited System and method for parsing and/or exporting data from one or more multi-relational ontologies
US7496593B2 (en) 2004-09-03 2009-02-24 Biowisdom Limited Creating a multi-relational ontology having a predetermined structure
US20060053171A1 (en) * 2004-09-03 2006-03-09 Biowisdom Limited System and method for curating one or more multi-relational ontologies
US7505989B2 (en) 2004-09-03 2009-03-17 Biowisdom Limited System and method for creating customized ontologies
US20060053175A1 (en) * 2004-09-03 2006-03-09 Biowisdom Limited System and method for creating, editing, and utilizing one or more rules for multi-relational ontology creation and maintenance
US20060053172A1 (en) * 2004-09-03 2006-03-09 Biowisdom Limited System and method for creating, editing, and using multi-relational ontologies
US20060074836A1 (en) * 2004-09-03 2006-04-06 Biowisdom Limited System and method for graphically displaying ontology data
US20060053174A1 (en) * 2004-09-03 2006-03-09 Bio Wisdom Limited System and method for data extraction and management in multi-relational ontology creation
US20060053173A1 (en) * 2004-09-03 2006-03-09 Biowisdom Limited System and method for support of chemical data within multi-relational ontologies
US20060074833A1 (en) * 2004-09-03 2006-04-06 Biowisdom Limited System and method for notifying users of changes in multi-relational ontologies
US8056008B2 (en) * 2004-09-14 2011-11-08 Adobe Systems Incorporated Interactive object property region for graphical user interface
US7719971B1 (en) 2004-09-15 2010-05-18 Qurio Holdings, Inc. Peer proxy binding
US20060059424A1 (en) * 2004-09-15 2006-03-16 Petri Jonah W Real-time data localization
EP1638336A1 (en) * 2004-09-17 2006-03-22 Korea Electronics Technology Institute Method for providing requested fields by get-data operation in TV-Anytime metadata service
US7406592B1 (en) * 2004-09-23 2008-07-29 American Megatrends, Inc. Method, system, and apparatus for efficient evaluation of boolean expressions
US7809536B1 (en) * 2004-09-30 2010-10-05 Motive, Inc. Model-building interface
US20060095480A1 (en) * 2004-10-29 2006-05-04 Microsoft Corporation Method and subsystem for performing subset computation for replication topologies
US7933868B2 (en) * 2004-11-04 2011-04-26 Microsoft Corporation Method and system for partition level cleanup of replication conflict metadata
US8010685B2 (en) * 2004-11-09 2011-08-30 Cisco Technology, Inc. Method and apparatus for content classification
US7936682B2 (en) * 2004-11-09 2011-05-03 Cisco Technology, Inc. Detecting malicious attacks using network behavior and header analysis
US20060106895A1 (en) * 2004-11-12 2006-05-18 Microsoft Corporation Method and subsystem for performing metadata cleanup for replication topologies
US20060117304A1 (en) * 2004-11-23 2006-06-01 Microsoft Corporation Method and system for localizing a package
US20060116912A1 (en) * 2004-12-01 2006-06-01 Oracle International Corporation Managing account-holder information using policies
US7395269B2 (en) * 2004-12-20 2008-07-01 Microsoft Corporation Systems and methods for changing items in a computer file
US7383278B2 (en) * 2004-12-20 2008-06-03 Microsoft Corporation Systems and methods for changing items in a computer file
US7552137B2 (en) * 2004-12-22 2009-06-23 International Business Machines Corporation Method for generating a choose tree for a range partitioned database table
US8032920B2 (en) * 2004-12-27 2011-10-04 Oracle International Corporation Policies as workflows
US7869989B1 (en) * 2005-01-28 2011-01-11 Artificial Cognition Inc. Methods and apparatus for understanding machine vocabulary
US9684380B2 (en) 2009-04-02 2017-06-20 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US9740293B2 (en) 2009-04-02 2017-08-22 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
CN101536494B (en) 2005-02-08 2017-04-26 奥布隆工业有限公司 A system and method for gesture-based control system
US9495013B2 (en) 2008-04-24 2016-11-15 Oblong Industries, Inc. Multi-modal gestural interface
US8537111B2 (en) 2006-02-08 2013-09-17 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US9910497B2 (en) 2006-02-08 2018-03-06 Oblong Industries, Inc. Gestural control of autonomous and semi-autonomous systems
US8370383B2 (en) 2006-02-08 2013-02-05 Oblong Industries, Inc. Multi-process interactive systems and methods
US8723795B2 (en) 2008-04-24 2014-05-13 Oblong Industries, Inc. Detecting, representing, and interpreting three-space input: gestural continuum subsuming freespace, proximal, and surface-contact modes
US9740922B2 (en) 2008-04-24 2017-08-22 Oblong Industries, Inc. Adaptive tracking system for spatial input devices
US9317128B2 (en) 2009-04-02 2016-04-19 Oblong Industries, Inc. Remote devices used in a markerless installation of a spatial operating environment incorporating gestural control
US9952673B2 (en) 2009-04-02 2018-04-24 Oblong Industries, Inc. Operating environment comprising multiple client devices, multiple displays, multiple users, and gestural control
US9823747B2 (en) 2006-02-08 2017-11-21 Oblong Industries, Inc. Spatial, multi-modal control device for use with spatial operating system
US8531396B2 (en) 2006-02-08 2013-09-10 Oblong Industries, Inc. Control system for navigating a principal dimension of a data space
US8321498B2 (en) * 2005-03-01 2012-11-27 Oracle International Corporation Policy interface description framework
US8103640B2 (en) * 2005-03-02 2012-01-24 International Business Machines Corporation Method and apparatus for role mapping methodology for user registry migration
US7643687B2 (en) * 2005-03-18 2010-01-05 Microsoft Corporation Analysis hints
US20060224571A1 (en) * 2005-03-30 2006-10-05 Jean-Michel Leon Methods and systems to facilitate searching a data resource
CN1842081B (en) * 2005-03-30 2010-06-02 华为技术有限公司;中国科学技术大学 ABNF character string mode matching and analyzing method and device
US20060235820A1 (en) * 2005-04-14 2006-10-19 International Business Machines Corporation Relational query of a hierarchical database
US20060241932A1 (en) * 2005-04-20 2006-10-26 Carman Ron C Translation previewer and validator
US7574578B2 (en) * 2005-05-02 2009-08-11 Elliptic Semiconductor Inc. System and method of adaptive memory structure for data pre-fragmentation or pre-segmentation
US7882116B2 (en) * 2005-05-18 2011-02-01 International Business Machines Corporation Method for localization of programming modeling resources
US20060271920A1 (en) * 2005-05-24 2006-11-30 Wael Abouelsaadat Multilingual compiler system and method
JPWO2006126679A1 (en) * 2005-05-27 2008-12-25 三洋電機株式会社 Data recording apparatus, and a method of transmitting data file in the data recording device
US7975219B2 (en) * 2005-05-31 2011-07-05 Sorenson Media, Inc. Method, graphical interface and computer-readable medium for reformatting data
US7885979B2 (en) * 2005-05-31 2011-02-08 Sorenson Media, Inc. Method, graphical interface and computer-readable medium for forming a batch job
US8296649B2 (en) * 2005-05-31 2012-10-23 Sorenson Media, Inc. Method, graphical interface and computer-readable medium for generating a preview of a reformatted preview segment
US8311091B1 (en) * 2005-06-03 2012-11-13 Visualon, Inc. Cache optimization for video codecs and video filters or color converters
US8661459B2 (en) 2005-06-21 2014-02-25 Microsoft Corporation Content syndication platform
US9104773B2 (en) 2005-06-21 2015-08-11 Microsoft Technology Licensing, Llc Finding and consuming web subscriptions in a web browser
CN100447743C (en) * 2005-06-24 2008-12-31 国际商业机器公司 System and method for localizing JAVA GUI application without modifying source code
US20070011171A1 (en) * 2005-07-08 2007-01-11 Nurminen Jukka K System and method for operation control functionality
GB0514192D0 (en) * 2005-07-12 2005-08-17 Ibm Methods, apparatus and computer programs for differential deserialization
US7467155B2 (en) * 2005-07-12 2008-12-16 Sand Technology Systems International, Inc. Method and apparatus for representation of unstructured data
US20070022283A1 (en) * 2005-07-22 2007-01-25 Sheng-Kai Hsu Method for fast activation of computer from a data disk with pre-installed operating system
US8387029B2 (en) * 2005-07-25 2013-02-26 Hercules Software, Llc Direct execution virtual machine
WO2007014341A3 (en) 2005-07-27 2007-12-21 Janal M Kalis Patent mapping
US20070038981A1 (en) * 2005-07-29 2007-02-15 Timothy Hanson System and method for multi-threaded resolver with deadlock detection
US7907608B2 (en) 2005-08-12 2011-03-15 Mcafee, Inc. High speed packet capture
US8161548B1 (en) 2005-08-15 2012-04-17 Trend Micro, Inc. Malware detection using pattern classification
US7818326B2 (en) 2005-08-31 2010-10-19 Mcafee, Inc. System and method for word indexing in a capture system and querying thereof
WO2007028226A1 (en) * 2005-09-09 2007-03-15 Ibm Canada Limited - Ibm Canada Limitee Method and system for state machine translation
US7779472B1 (en) * 2005-10-11 2010-08-17 Trend Micro, Inc. Application behavior based malware detection
US8620667B2 (en) * 2005-10-17 2013-12-31 Microsoft Corporation Flexible speech-activated command and control
US7730011B1 (en) 2005-10-19 2010-06-01 Mcafee, Inc. Attributes of captured objects in a capture system
US7818181B2 (en) 2005-10-31 2010-10-19 Focused Medical Analytics Llc Medical practice pattern tool
US7827373B2 (en) * 2005-10-31 2010-11-02 Honeywell International Inc. System and method for managing a short-term heap memory
US9075630B1 (en) * 2005-11-14 2015-07-07 The Mathworks, Inc. Code evaluation of fixed-point math in the presence of customizable fixed-point typing rules
US7665015B2 (en) * 2005-11-14 2010-02-16 Sun Microsystems, Inc. Hardware unit for parsing an XML document
WO2007056807A1 (en) * 2005-11-18 2007-05-24 Robert Arthur Crewdson Computer software development system and method
JP2007150785A (en) * 2005-11-29 2007-06-14 Sony Corp Transmission/reception system, transmission apparatus and transmission method, receiving apparatus and receiving method, and program
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US20070136746A1 (en) * 2005-12-08 2007-06-14 Electronics And Telecommunications Research Institute User context based dynamic service combination system and method
US7571151B1 (en) * 2005-12-15 2009-08-04 Gneiss Software, Inc. Data analysis tool for analyzing data stored in multiple text files
US20090024598A1 (en) * 2006-12-20 2009-01-22 Ying Xie System, method, and computer program product for information sorting and retrieval using a language-modeling kernel function
US20070150821A1 (en) * 2005-12-22 2007-06-28 Thunemann Paul Z GUI-maker (data-centric automated GUI-generation)
US8150857B2 (en) 2006-01-20 2012-04-03 Glenbrook Associates, Inc. System and method for context-rich database optimized for processing of concepts
WO2007085304A1 (en) * 2006-01-27 2007-08-02 Swiss Reinsurance Company System for automated generation of database structures and/or databases and a corresponding method
US20070179826A1 (en) * 2006-02-01 2007-08-02 International Business Machines Corporation Creating a modified ontological model of a business machine
US7640247B2 (en) * 2006-02-06 2009-12-29 Microsoft Corporation Distributed namespace aggregation
US9245236B2 (en) * 2006-02-16 2016-01-26 Oracle International Corporation Factorization of concerns to build a SDP (service delivery platform)
US7779004B1 (en) 2006-02-22 2010-08-17 Qurio Holdings, Inc. Methods, systems, and products for characterizing target systems
US7764701B1 (en) 2006-02-22 2010-07-27 Qurio Holdings, Inc. Methods, systems, and products for classifying peer systems
US20070208582A1 (en) * 2006-03-02 2007-09-06 International Business Machines Corporation Method, system, and program product for providing an aggregated view
US8280843B2 (en) 2006-03-03 2012-10-02 Microsoft Corporation RSS data-processing object
US7979803B2 (en) 2006-03-06 2011-07-12 Microsoft Corporation RSS hostable control
US7593927B2 (en) * 2006-03-10 2009-09-22 Microsoft Corporation Unstructured data in a mining model language
US7752596B2 (en) * 2006-03-17 2010-07-06 Microsoft Corporation Connecting alternative development environment to interpretive runtime engine
US8504537B2 (en) 2006-03-24 2013-08-06 Mcafee, Inc. Signature distribution in a document registration system
US20070239505A1 (en) * 2006-03-30 2007-10-11 Microsoft Corporation Abstract execution model for a continuation-based meta-runtime
US7933890B2 (en) * 2006-03-31 2011-04-26 Google Inc. Propagating useful information among related web pages, such as web pages of a website
US7596549B1 (en) 2006-04-03 2009-09-29 Qurio Holdings, Inc. Methods, systems, and products for analyzing annotations for related content
US8838536B2 (en) * 2006-04-18 2014-09-16 Sandeep Bhanote Method and apparatus for mobile data collection and management
US8005841B1 (en) 2006-04-28 2011-08-23 Qurio Holdings, Inc. Methods, systems, and products for classifying content segments
US7958227B2 (en) 2006-05-22 2011-06-07 Mcafee, Inc. Attributes of captured objects in a capture system
US8799043B2 (en) 2006-06-07 2014-08-05 Ricoh Company, Ltd. Consolidation of member schedules with a project schedule in a network-based management system
US20070288288A1 (en) * 2006-06-07 2007-12-13 Tetsuro Motoyama Use of schedule editors in a network-based project schedule management system
US8050953B2 (en) * 2006-06-07 2011-11-01 Ricoh Company, Ltd. Use of a database in a network-based project schedule management system
US20070294500A1 (en) * 2006-06-16 2007-12-20 Falco Michael A Methods and system to provide references associated with data streams
US7600088B1 (en) 2006-06-26 2009-10-06 Emc Corporation Techniques for providing storage array services to a cluster of nodes using portal devices
US8396848B2 (en) * 2006-06-26 2013-03-12 Microsoft Corporation Customizable parameter user interface
US8046749B1 (en) * 2006-06-27 2011-10-25 The Mathworks, Inc. Analysis of a sequence of data in object-oriented environments
US8615573B1 (en) 2006-06-30 2013-12-24 Quiro Holdings, Inc. System and method for networked PVR storage and content capture
US8904299B1 (en) 2006-07-17 2014-12-02 The Mathworks, Inc. Graphical user interface for analysis of a sequence of data in object-oriented environment
US7583262B2 (en) * 2006-08-01 2009-09-01 Thomas Yeh Optimization of time-critical software components for real-time interactive applications
US8060514B2 (en) 2006-08-04 2011-11-15 Apple Inc. Methods and systems for managing composite data files
US7747562B2 (en) * 2006-08-15 2010-06-29 International Business Machines Corporation Virtual multidimensional datasets for enterprise software systems
CN101127101A (en) * 2006-08-18 2008-02-20 鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司 Label information supervision system and method
US8295459B2 (en) * 2006-08-24 2012-10-23 Verisign, Inc. System and method for dynamically partitioning context servers
US7793211B2 (en) * 2006-08-28 2010-09-07 Walter Brenner Method for delivering targeted web advertisements and user annotations to a web page
US7973954B2 (en) * 2006-08-28 2011-07-05 Sharp Laboratories Of America, Inc. Method and apparatus for automatic language switching for an imaging device
US7873988B1 (en) 2006-09-06 2011-01-18 Qurio Holdings, Inc. System and method for rights propagation and license management in conjunction with distribution of digital content in a social network
US9202184B2 (en) 2006-09-07 2015-12-01 International Business Machines Corporation Optimizing the selection, verification, and deployment of expert resources in a time of chaos
US7895150B2 (en) * 2006-09-07 2011-02-22 International Business Machines Corporation Enterprise planning and performance management system providing double dispatch retrieval of multidimensional data
US8255790B2 (en) * 2006-09-08 2012-08-28 Microsoft Corporation XML based form modification with import/export capability
US8271429B2 (en) 2006-09-11 2012-09-18 Wiredset Llc System and method for collecting and processing data
US8244694B2 (en) * 2006-09-12 2012-08-14 International Business Machines Corporation Dynamic schema assembly to accommodate application-specific metadata
US7953713B2 (en) * 2006-09-14 2011-05-31 International Business Machines Corporation System and method for representing and using tagged data in a management system
US20080077384A1 (en) * 2006-09-22 2008-03-27 International Business Machines Corporation Dynamically translating a software application to a user selected target language that is not natively provided by the software application
US7801971B1 (en) 2006-09-26 2010-09-21 Qurio Holdings, Inc. Systems and methods for discovering, creating, using, and managing social network circuits
US7693900B2 (en) * 2006-09-27 2010-04-06 The Boeing Company Querying of distributed databases using neutral ontology model for query front end
US7925592B1 (en) 2006-09-27 2011-04-12 Qurio Holdings, Inc. System and method of using a proxy server to manage lazy content distribution in a social network
US8554827B2 (en) 2006-09-29 2013-10-08 Qurio Holdings, Inc. Virtual peer for a content sharing system
US7782866B1 (en) 2006-09-29 2010-08-24 Qurio Holdings, Inc. Virtual peer in a peer-to-peer network
US8055603B2 (en) 2006-10-03 2011-11-08 International Business Machines Corporation Automatic generation of new rules for processing synthetic events using computer-based learning processes
US20080294459A1 (en) * 2006-10-03 2008-11-27 International Business Machines Corporation Health Care Derivatives as a Result of Real Time Patient Analytics
US8145582B2 (en) 2006-10-03 2012-03-27 International Business Machines Corporation Synthetic events for real time patient analysis
US8555247B2 (en) * 2006-10-13 2013-10-08 International Business Machines Corporation Systems and methods for expressing temporal relationships spanning lifecycle representations
US8918755B2 (en) * 2006-10-17 2014-12-23 International Business Machines Corporation Enterprise performance management software system having dynamic code generation
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US9311647B2 (en) * 2006-10-23 2016-04-12 InMobi Pte Ltd. Method and system for providing a widget usable in financial transactions
WO2008052013A3 (en) * 2006-10-23 2008-10-30 Chipin Inc Method and system for providing a widget usable in affiliate marketing
US20080098325A1 (en) * 2006-10-23 2008-04-24 Carnet Williams Method and system for facilitating social payment or commercial transactions
US20080098290A1 (en) * 2006-10-23 2008-04-24 Carnet Williams Method and system for providing a widget for displaying multimedia content
US7565332B2 (en) * 2006-10-23 2009-07-21 Chipin Inc. Method and system for providing a widget usable in affiliate marketing
US9183002B2 (en) * 2006-10-23 2015-11-10 InMobi Pte Ltd. Method and system for providing a widget for displaying multimedia content
US20080120317A1 (en) * 2006-11-21 2008-05-22 Gile Bradley P Language processing system
US7634454B2 (en) * 2006-11-21 2009-12-15 Microsoft Corporation Concept keywords colorization in program identifiers
WO2008066496A1 (en) * 2006-11-27 2008-06-05 Creative Technology Ltd A communication system, a media player used in the system and a method thereof
US7974993B2 (en) * 2006-12-04 2011-07-05 Microsoft Corporation Application loader for support of version management
US8438535B2 (en) * 2006-12-04 2013-05-07 Sap Ag Method and apparatus for persistent object tool
US20080141230A1 (en) * 2006-12-06 2008-06-12 Microsoft Corporation Scope-Constrained Specification Of Features In A Programming Language
WO2008070860A3 (en) * 2006-12-07 2008-12-04 Sheldon O Linker Method and system for machine understanding, knowledge, and conversation
US7886334B1 (en) 2006-12-11 2011-02-08 Qurio Holdings, Inc. System and method for social network trust assessment
US7650371B2 (en) * 2006-12-14 2010-01-19 Microsoft Corporation Finalizable object usage in software transactions
US7730216B1 (en) 2006-12-14 2010-06-01 Qurio Holdings, Inc. System and method of sharing content among multiple social network nodes using an aggregation node
US7934207B2 (en) * 2006-12-19 2011-04-26 Microsoft Corporation Data schemata in programming language contracts
US8799448B2 (en) * 2006-12-20 2014-08-05 Microsoft Corporation Generating rule packs for monitoring computer systems
US8135800B1 (en) 2006-12-27 2012-03-13 Qurio Holdings, Inc. System and method for user classification based on social network aware content analysis
US7680765B2 (en) * 2006-12-27 2010-03-16 Microsoft Corporation Iterate-aggregate query parallelization
US20080168049A1 (en) * 2007-01-08 2008-07-10 Microsoft Corporation Automatic acquisition of a parallel corpus from a network
US7962432B2 (en) * 2007-01-16 2011-06-14 Timmins Software Corporation Analyzing information technology systems using collaborative intelligence data anonimity
US7675527B2 (en) * 2007-01-26 2010-03-09 Microsoft Corp. Multisource composable projection of text
US20080183725A1 (en) * 2007-01-31 2008-07-31 Microsoft Corporation Metadata service employing common data model
US8560654B2 (en) * 2007-02-02 2013-10-15 Hewlett-Packard Development Company Change management
US8850414B2 (en) * 2007-02-02 2014-09-30 Microsoft Corporation Direct access of language metadata
US7917507B2 (en) * 2007-02-12 2011-03-29 Microsoft Corporation Web data usage platform
US8429185B2 (en) * 2007-02-12 2013-04-23 Microsoft Corporation Using structured data for online research
US20080201632A1 (en) * 2007-02-16 2008-08-21 Palo Alto Research Center Incorporated System and method for annotating documents
US8166056B2 (en) * 2007-02-16 2012-04-24 Palo Alto Research Center Incorporated System and method for searching annotated document collections
US8615404B2 (en) * 2007-02-23 2013-12-24 Microsoft Corporation Self-describing data framework
US7805390B2 (en) * 2007-02-26 2010-09-28 International Business Machines Corporation System and method for deriving a hierarchical event based database optimized for analysis of complex accidents
US7970759B2 (en) 2007-02-26 2011-06-28 International Business Machines Corporation System and method for deriving a hierarchical event based database optimized for pharmaceutical analysis
US7783586B2 (en) * 2007-02-26 2010-08-24 International Business Machines Corporation System and method for deriving a hierarchical event based database optimized for analysis of biological systems
US7792774B2 (en) * 2007-02-26 2010-09-07 International Business Machines Corporation System and method for deriving a hierarchical event based database optimized for analysis of chaotic events
US7788202B2 (en) * 2007-02-26 2010-08-31 International Business Machines Corporation System and method for deriving a hierarchical event based database optimized for clinical applications
US7840903B1 (en) 2007-02-26 2010-11-23 Qurio Holdings, Inc. Group content representations
US7788203B2 (en) * 2007-02-26 2010-08-31 International Business Machines Corporation System and method of accident investigation for complex situations involving numerous known and unknown factors along with their probabilistic weightings
US7853611B2 (en) 2007-02-26 2010-12-14 International Business Machines Corporation System and method for deriving a hierarchical event based database having action triggers based on inferred probabilities
US7882153B1 (en) * 2007-02-28 2011-02-01 Intuit Inc. Method and system for electronic messaging of trade data
US20080263103A1 (en) 2007-03-02 2008-10-23 Mcgregor Lucas Digital asset management system (DAMS)
US7958104B2 (en) 2007-03-08 2011-06-07 O'donnell Shawn C Context based data searching
US20110093500A1 (en) * 2009-01-21 2011-04-21 Google Inc. Query Optimization
US8204856B2 (en) * 2007-03-15 2012-06-19 Google Inc. Database replication
US20090024590A1 (en) * 2007-03-15 2009-01-22 Sturge Timothy User contributed knowledge database
US20100121839A1 (en) * 2007-03-15 2010-05-13 Scott Meyer Query optimization
US8005812B1 (en) 2007-03-16 2011-08-23 The Mathworks, Inc. Collaborative modeling environment
US8015175B2 (en) * 2007-03-16 2011-09-06 John Fairweather Language independent stemming
US9729843B1 (en) 2007-03-16 2017-08-08 The Mathworks, Inc. Enriched video for a technical computing environment
US7870499B2 (en) * 2007-03-16 2011-01-11 Sap Ag System for composing software appliances using user task models
US20080235066A1 (en) * 2007-03-19 2008-09-25 Hiroko Mano Task management device, task management method, and task management program
US8095630B1 (en) * 2007-03-20 2012-01-10 Hewlett-Packard Development Company, L.P. Network booting
US8065667B2 (en) * 2007-03-20 2011-11-22 Yahoo! Inc. Injecting content into third party documents for document processing
US9558184B1 (en) * 2007-03-21 2017-01-31 Jean-Michel Vanhalle System and method for knowledge modeling
US8214503B2 (en) * 2007-03-23 2012-07-03 Oracle International Corporation Factoring out dialog control and call control
US20080244511A1 (en) * 2007-03-30 2008-10-02 Microsoft Corporation Developing a writing system analyzer using syntax-directed translation
US20100031342A1 (en) * 2007-04-12 2010-02-04 Honeywell International, Inc Method and system for providing secure video data transmission and processing
WO2009009192A3 (en) * 2007-04-18 2009-06-04 Aumni Data Inc Adaptive archive data management
US8290967B2 (en) * 2007-04-19 2012-10-16 Barnesandnoble.Com Llc Indexing and search query processing
US8407725B2 (en) * 2007-04-24 2013-03-26 Oblong Industries, Inc. Proteins, pools, and slawx in processing environments
US7987446B2 (en) * 2007-04-24 2011-07-26 International Business Machines Corporation Method for automating variables in end-user programming system
US8332209B2 (en) * 2007-04-24 2012-12-11 Zinovy D. Grinblat Method and system for text compression and decompression
GB0804035D0 (en) * 2007-05-21 2008-04-09 Sherikat Link Letatweer Elbarm Method for transliterating and suggesting arabic replacement for a given user input
US7797309B2 (en) * 2007-06-07 2010-09-14 Datamaxx Applied Technologies, Inc. System and method for search parameter data entry and result access in a law enforcement multiple domain security environment
US20080306948A1 (en) * 2007-06-08 2008-12-11 Yahoo! Inc. String and binary data sorting
US8200644B2 (en) * 2007-06-15 2012-06-12 Bryte Computer Technologies, Inc. Methods, systems, and computer program products for search result driven charitable donations
US9015279B2 (en) * 2007-06-15 2015-04-21 Bryte Computer Technologies Methods, systems, and computer program products for tokenized domain name resolution
US8449394B2 (en) * 2007-06-19 2013-05-28 Wms Gaming Inc. Plug-in architecture for a wagering game network
US8086597B2 (en) * 2007-06-28 2011-12-27 International Business Machines Corporation Between matching
US7895189B2 (en) * 2007-06-28 2011-02-22 International Business Machines Corporation Index exploitation
US8494911B2 (en) * 2007-06-29 2013-07-23 Verizon Patent And Licensing Inc. Dashboard maintenance/outage correlation
US20120229473A1 (en) * 2007-07-17 2012-09-13 Airgini Group, Inc. Dynamic Animation in a Mobile Device
US20090024366A1 (en) * 2007-07-18 2009-01-22 Microsoft Corporation Computerized progressive parsing of mathematical expressions
US20090055433A1 (en) * 2007-07-25 2009-02-26 Gerard Group International Llc System, Apparatus and Method for Organizing Forecasting Event Data
US9032390B2 (en) * 2008-07-29 2015-05-12 Qualcomm Incorporated Framework versioning
WO2009021044A1 (en) * 2007-08-07 2009-02-12 The Research Foundation Of Suny Referent tracking of portions of reality
CN101369249B (en) * 2007-08-14 2011-08-17 国际商业机器公司 Method and apparatus for marking GUI component of software
US20090048928A1 (en) * 2007-08-14 2009-02-19 John Nicholas Gross Temporal Based Online Search and Advertising
US7970943B2 (en) * 2007-08-14 2011-06-28 Oracle International Corporation Providing interoperability in software identifier standards
US20090055806A1 (en) * 2007-08-22 2009-02-26 Jian Tang Techniques for Employing Aspect Advice Based on an Object State
US9111285B2 (en) 2007-08-27 2015-08-18 Qurio Holdings, Inc. System and method for representing content, user presence and interaction within virtual world advertising environments
US8943432B2 (en) * 2007-08-29 2015-01-27 International Business Machines Corporation Dynamically configurable portlet
US8386630B1 (en) 2007-09-09 2013-02-26 Arris Solutions, Inc. Video-aware P2P streaming and download with support for real-time content alteration
US9135340B2 (en) * 2007-09-12 2015-09-15 Datalaw, Inc. Research system and method with record builder
US8522195B2 (en) * 2007-09-14 2013-08-27 Exigen Properties, Inc. Systems and methods to generate a software framework based on semantic modeling and business rules
US7765204B2 (en) * 2007-09-27 2010-07-27 Microsoft Corporation Method of finding candidate sub-queries from longer queries
US8239342B2 (en) * 2007-10-05 2012-08-07 International Business Machines Corporation Method and apparatus for providing on-demand ontology creation and extension
US8171029B2 (en) * 2007-10-05 2012-05-01 Fujitsu Limited Automatic generation of ontologies using word affinities
US7930262B2 (en) * 2007-10-18 2011-04-19 International Business Machines Corporation System and method for the longitudinal analysis of education outcomes using cohort life cycles, cluster analytics-based cohort analysis, and probabilistic data schemas
US20090106319A1 (en) * 2007-10-22 2009-04-23 Kabushiki Kaisha Toshiba Data management apparatus and data management method
US8073810B2 (en) * 2007-10-29 2011-12-06 Oracle International Corporation Shared view of customers across business support systems (BSS) and a service delivery platform (SDP)
WO2009090498A3 (en) * 2007-10-30 2009-12-30 Transformer Software, Ltd. Key semantic relations for text processing
US8055497B2 (en) * 2007-11-02 2011-11-08 International Business Machines Corporation Method and system to parse addresses using a processing system
WO2009062109A1 (en) * 2007-11-08 2009-05-14 Linkstorm Apparatuses, methods and systems for hierarchical multidimensional information interfaces
US8539097B2 (en) * 2007-11-14 2013-09-17 Oracle International Corporation Intelligent message processing
US8161171B2 (en) * 2007-11-20 2012-04-17 Oracle International Corporation Session initiation protocol-based internet protocol television
US20090144265A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation Search engine for searching research data
US20090144318A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation System for searching research data
US20090144242A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation Indexer for searching research data
US20090144241A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation Search term parser for searching research data
US20090144317A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation Data search markup language for searching research data
US20090144222A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation Chart generator for searching research data
US20090144243A1 (en) * 2007-12-03 2009-06-04 Chartsource, Inc., A Delaware Corporation User interface for searching research data
US8140584B2 (en) * 2007-12-10 2012-03-20 Aloke Guha Adaptive data classification for data mining
US7779051B2 (en) 2008-01-02 2010-08-17 International Business Machines Corporation System and method for optimizing federated and ETL'd databases with considerations of specialized data structures within an environment having multidimensional constraints
US20090178104A1 (en) * 2008-01-08 2009-07-09 Hemal Shah Method and system for a multi-level security association lookup scheme for internet protocol security
US20090177646A1 (en) * 2008-01-09 2009-07-09 Microsoft Corporation Plug-In for Health Monitoring System
US8099267B2 (en) * 2008-01-11 2012-01-17 Schlumberger Technology Corporation Input deck migrator for simulators
US8775441B2 (en) 2008-01-16 2014-07-08 Ab Initio Technology Llc Managing an archive for approximate string matching
US8103660B2 (en) * 2008-01-22 2012-01-24 International Business Machines Corporation Computer method and system for contextual management and awareness of persistent queries and results
US7877367B2 (en) * 2008-01-22 2011-01-25 International Business Machines Corporation Computer method and apparatus for graphical inquiry specification with progressive summary
US9654515B2 (en) 2008-01-23 2017-05-16 Oracle International Corporation Service oriented architecture-based SCIM platform
US8966498B2 (en) * 2008-01-24 2015-02-24 Oracle International Corporation Integrating operational and business support systems with a service delivery platform
US8589338B2 (en) * 2008-01-24 2013-11-19 Oracle International Corporation Service-oriented architecture (SOA) management of data repository
US8005788B2 (en) * 2008-01-28 2011-08-23 International Business Machines Corporation System and method for legacy system component incremental migration
US8225288B2 (en) * 2008-01-29 2012-07-17 Intuit Inc. Model-based testing using branches, decisions, and options
US9817822B2 (en) 2008-02-07 2017-11-14 International Business Machines Corporation Managing white space in a portal web page
US8401022B2 (en) * 2008-02-08 2013-03-19 Oracle International Corporation Pragmatic approaches to IMS
US9076342B2 (en) 2008-02-19 2015-07-07 Architecture Technology Corporation Automated execution and evaluation of network-based training exercises
US7885973B2 (en) * 2008-02-22 2011-02-08 International Business Machines Corporation Computer method and apparatus for parameterized semantic inquiry templates with type annotations
US7949679B2 (en) * 2008-03-05 2011-05-24 International Business Machines Corporation Efficient storage for finite state machines
US8914493B2 (en) * 2008-03-10 2014-12-16 Oracle International Corporation Presence-based event driven architecture
EP2105847A1 (en) * 2008-03-27 2009-09-30 Alcatel Lucent Device and method for automatically generating ontologies from term definitions contained into a dictionary
US8620889B2 (en) * 2008-03-27 2013-12-31 Microsoft Corporation Managing data transfer between endpoints in a distributed computing environment
US9070095B2 (en) * 2008-04-01 2015-06-30 Siemens Aktiengesellschaft Ensuring referential integrity of medical image data
US8650228B2 (en) * 2008-04-14 2014-02-11 Roderick B. Wideman Methods and systems for space management in data de-duplication
WO2009130606A3 (en) * 2008-04-21 2010-01-07 Vaka Corporation Methods and systems for shareable virtual devices
US9933852B2 (en) 2009-10-14 2018-04-03 Oblong Industries, Inc. Multi-process interactive systems and methods
US8521512B2 (en) * 2008-04-30 2013-08-27 Deep Sky Concepts, Inc Systems and methods for natural language communication with a computer
US8972445B2 (en) 2009-04-23 2015-03-03 Deep Sky Concepts, Inc. Systems and methods for storage of declarative knowledge accessible by natural language in a computer capable of appropriately responding
US9805020B2 (en) 2009-04-23 2017-10-31 Deep Sky Concepts, Inc. In-context access of stored declarative knowledge using natural language expression
US8401938B1 (en) 2008-05-12 2013-03-19 The Pnc Financial Services Group, Inc. Transferring funds between parties' financial accounts
US8751385B1 (en) 2008-05-15 2014-06-10 The Pnc Financial Services Group, Inc. Financial email
US8001329B2 (en) * 2008-05-19 2011-08-16 International Business Machines Corporation Speculative stream scanning
US8738360B2 (en) * 2008-06-06 2014-05-27 Apple Inc. Data detection of a character sequence having multiple possible data types
US8311806B2 (en) 2008-06-06 2012-11-13 Apple Inc. Data detection in a sequence of tokens using decision tree reductions
US8443350B2 (en) * 2008-06-06 2013-05-14 Cornell University System and method for scaling simulations and games
JP5258400B2 (en) * 2008-06-06 2013-08-07 キヤノン株式会社 Document management system, a document management method, and computer program
US7917547B2 (en) * 2008-06-10 2011-03-29 Microsoft Corporation Virtualizing objects within queries
US8032768B2 (en) * 2008-06-20 2011-10-04 Dell Products, Lp System and method for smoothing power reclamation of blade servers
US8458703B2 (en) 2008-06-26 2013-06-04 Oracle International Corporation Application requesting management function based on metadata for managing enabler or dependency
US8176149B2 (en) * 2008-06-30 2012-05-08 International Business Machines Corporation Ejection of storage drives in a computing network
US7982764B2 (en) * 2008-07-08 2011-07-19 United Parcel Service Of America, Inc. Apparatus for monitoring a package handling system
US8205242B2 (en) 2008-07-10 2012-06-19 Mcafee, Inc. System and method for data mining and security policy management
US8584112B2 (en) * 2008-07-14 2013-11-12 Borland Software Corporation Open application lifecycle management framework
US20100023924A1 (en) * 2008-07-23 2010-01-28 Microsoft Corporation Non-constant data encoding for table-driven systems
US8301437B2 (en) 2008-07-24 2012-10-30 Yahoo! Inc. Tokenization platform
US20100031147A1 (en) * 2008-07-31 2010-02-04 Chipln Inc. Method and system for mixing of multimedia content
US8171045B2 (en) * 2008-07-31 2012-05-01 Xsevo Systems, Inc. Record based code structure
US20100031235A1 (en) * 2008-08-01 2010-02-04 Modular Mining Systems, Inc. Resource Double Lookup Framework
US8167713B2 (en) * 2008-08-05 2012-05-01 Wms Gaming, Inc. Wagering game digital representative
US8762969B2 (en) * 2008-08-07 2014-06-24 Microsoft Corporation Immutable parsing
US7984311B2 (en) 2008-08-08 2011-07-19 Dell Products L.P. Demand based power allocation
US9253154B2 (en) 2008-08-12 2016-02-02 Mcafee, Inc. Configuration management for a capture/registration system
US8959053B2 (en) * 2008-08-13 2015-02-17 Alcatel Lucent Configuration file framework to support high availability schema based upon asynchronous checkpointing
US8505067B2 (en) * 2008-08-21 2013-08-06 Oracle International Corporation Service level network quality of service policy enforcement
US9002976B2 (en) 2008-09-15 2015-04-07 Vaultive Ltd System, apparatus and method for encryption and decryption of data transmitted over a network
GB0817170D0 (en) * 2008-09-19 2008-10-29 Motorola Inc Selection of associated content for content items
US8768892B2 (en) * 2008-09-29 2014-07-01 Microsoft Corporation Analyzing data and providing recommendations
US8166077B2 (en) * 2008-09-30 2012-04-24 International Business Machines Corporation Mapping a class, method, package, and/or pattern to a component
US8266148B2 (en) * 2008-10-07 2012-09-11 Aumni Data, Inc. Method and system for business intelligence analytics on unstructured data
CN107273977A (en) 2008-10-23 2017-10-20 起元技术有限责任公司 Method and system for identifying couplings, and machine readable hardware storage device
US8548797B2 (en) * 2008-10-30 2013-10-01 Yahoo! Inc. Short text language detection using geographic information
US9235572B2 (en) * 2008-10-31 2016-01-12 Disney Enterprises, Inc. System and method for updating digital media content
US8364657B2 (en) 2008-10-31 2013-01-29 Disney Enterprises, Inc. System and method for providing media content
KR101574603B1 (en) * 2008-10-31 2015-12-04 삼성전자주식회사 Conditional processing method and apparatus
US9542700B2 (en) * 2008-11-05 2017-01-10 Yu-Hua Chu Business model based on multi-level application widgets and system thereof
US20100115438A1 (en) * 2008-11-05 2010-05-06 Yu-Chung Chu Method for creating multi-level widgets and system thereof
US20100124738A1 (en) * 2008-11-19 2010-05-20 Yuan Yuan User interface for interactive teaching, and method for operating the same
US20100138854A1 (en) * 2008-12-02 2010-06-03 Electronics And Telecommunications Research Institute Method and system for controlling restriction on viewing multimedia contents
KR101301243B1 (en) 2008-12-02 2013-08-28 한국전자통신연구원 Method for controlling restriction to viewing multimedia contents and system thereof
US8762963B2 (en) * 2008-12-04 2014-06-24 Beck Fund B.V. L.L.C. Translation of programming code
US8397222B2 (en) * 2008-12-05 2013-03-12 Peter D. Warren Any-to-any system for doing computing
US8805861B2 (en) * 2008-12-09 2014-08-12 Google Inc. Methods and systems to train models to extract and integrate information from data sources
CN101459619B (en) * 2009-01-05 2011-01-05 杭州华三通信技术有限公司 Method and apparatus for packet transmission processing in network
US8850591B2 (en) 2009-01-13 2014-09-30 Mcafee, Inc. System and method for concept building
US8706709B2 (en) 2009-01-15 2014-04-22 Mcafee, Inc. System and method for intelligent term grouping
US20100192053A1 (en) * 2009-01-26 2010-07-29 Kabushiki Kaisha Toshiba Workflow system and method of designing entry form used for workflow
US8965798B1 (en) 2009-01-30 2015-02-24 The Pnc Financial Services Group, Inc. Requesting reimbursement for transactions
US8458105B2 (en) * 2009-02-12 2013-06-04 Decisive Analytics Corporation Method and apparatus for analyzing and interrelating data
US20100235314A1 (en) * 2009-02-12 2010-09-16 Decisive Analytics Corporation Method and apparatus for analyzing and interrelating video data
US8180824B2 (en) 2009-02-23 2012-05-15 Trane International, Inc. Log collection data harvester for use in a building automation system
US8239842B2 (en) * 2009-02-24 2012-08-07 Microsoft Corporation Implicit line continuation
US8473442B1 (en) 2009-02-25 2013-06-25 Mcafee, Inc. System and method for intelligent state management
US20100241893A1 (en) 2009-03-18 2010-09-23 Eric Friedman Interpretation and execution of a customizable database request using an extensible computer process and an available computing environment
US20100241755A1 (en) * 2009-03-18 2010-09-23 Microsoft Corporation Permission model for feed content
US20100241579A1 (en) * 2009-03-19 2010-09-23 Microsoft Corporation Feed Content Presentation
US9342508B2 (en) * 2009-03-19 2016-05-17 Microsoft Technology Licensing, Llc Data localization templates and parsing
US8077050B2 (en) * 2009-03-24 2011-12-13 United Parcel Service Of America, Inc. Transport system evaluator
US8447722B1 (en) 2009-03-25 2013-05-21 Mcafee, Inc. System and method for data mining and security policy management
US8667121B2 (en) 2009-03-25 2014-03-04 Mcafee, Inc. System and method for managing data and policies
US8799877B2 (en) * 2009-03-27 2014-08-05 Optumsoft, Inc. Interpreter-based program language translator using embedded interpreter types and variables
US20100250613A1 (en) * 2009-03-30 2010-09-30 Microsoft Corporation Query processing using arrays
CA2660748C (en) * 2009-03-31 2016-08-09 Trapeze Software Inc. System for aggregating data and a method for providing the same
US8364644B1 (en) * 2009-04-22 2013-01-29 Network Appliance, Inc. Exclusion of data from a persistent point-in-time image
US20100281025A1 (en) * 2009-05-04 2010-11-04 Motorola, Inc. Method and system for recommendation of content items
US8204900B2 (en) * 2009-05-21 2012-06-19 Bank Of America Corporation Metrics library
US8311961B2 (en) * 2009-05-29 2012-11-13 International Business Machines Corporation Effort estimation using text analysis
US8879547B2 (en) * 2009-06-02 2014-11-04 Oracle International Corporation Telephony application services
US8429395B2 (en) 2009-06-12 2013-04-23 Microsoft Corporation Controlling access to software component state
US9594759B2 (en) * 2009-06-16 2017-03-14 Microsoft Technology Licensing, Llc Backup and archival of selected items as a composite object
US20100325214A1 (en) * 2009-06-18 2010-12-23 Microsoft Corporation Predictive Collaboration
US8909566B2 (en) 2009-06-23 2014-12-09 Oracle International Corporation Method, a computer program and apparatus for analyzing symbols in a computer
US9933914B2 (en) * 2009-07-06 2018-04-03 Nokia Technologies Oy Method and apparatus of associating application state information with content and actions
JP4892626B2 (en) * 2009-07-08 2012-03-07 東芝テック株式会社 Printer and message data management program
JP5471106B2 (en) * 2009-07-16 2014-04-16 独立行政法人情報通信研究機構 Speech translation system, dictionary server apparatus, and program
US20110029904A1 (en) * 2009-07-30 2011-02-03 Adam Miles Smith Behavior and Appearance of Touch-Optimized User Interface Elements for Controlling Computer Function
JP5375413B2 (en) * 2009-07-30 2013-12-25 富士通株式会社 Data conversion device, data conversion method and data conversion program
US9123006B2 (en) * 2009-08-11 2015-09-01 Novell, Inc. Techniques for parallel business intelligence evaluation and management
US9542408B2 (en) 2010-08-27 2017-01-10 Pneuron Corp. Method and process for enabling distributing cache data sources for query processing and distributed disk caching of large data and analysis requests
GB201204564D0 (en) * 2009-08-28 2012-05-02 Pneuron Corp System and method using neutral networks for real-time business intelligence and automation control
US8505813B2 (en) 2009-09-04 2013-08-13 Bank Of America Corporation Customer benefit offer program enrollment
JP4992945B2 (en) * 2009-09-10 2012-08-08 株式会社日立製作所 Stream data generation method, the stream data generation device and stream data generation program
FR2950170B1 (en) * 2009-09-16 2011-10-14 Airbus Operations Sas interface configuration file generation method of calculators for an avionics platform
US8364463B2 (en) * 2009-09-25 2013-01-29 International Business Machines Corporation Optimizing a language/media translation map
US9031243B2 (en) * 2009-09-28 2015-05-12 iZotope, Inc. Automatic labeling and control of audio algorithms by audio recognition
US8645936B2 (en) * 2009-09-30 2014-02-04 Zynga Inc. Apparatuses, methods and systems for an a API call abstractor
US8266125B2 (en) * 2009-10-01 2012-09-11 Starcounter Ab Systems and methods for managing databases
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US8341154B2 (en) * 2009-10-28 2012-12-25 Microsoft Corporation Extending types hosted in database to other platforms
US20110106776A1 (en) * 2009-11-03 2011-05-05 Schlumberger Technology Corporation Incremental implementation of undo/redo support in legacy applications
US20110107246A1 (en) * 2009-11-03 2011-05-05 Schlumberger Technology Corporation Undo/redo operations for multi-object data
US20110106720A1 (en) * 2009-11-05 2011-05-05 Jerome Dale Johnson Expert system for gap analysis
WO2011057259A1 (en) * 2009-11-09 2011-05-12 Arcsight, Inc. Enabling faster full-text searching using a structured data store
KR101767262B1 (en) 2009-11-09 2017-08-11 삼성전자주식회사 Method and apparatus for changing input format in input system using universal plug and play
US8275788B2 (en) 2009-11-17 2012-09-25 Glace Holding Llc System and methods for accessing web pages using natural language
US8583830B2 (en) * 2009-11-19 2013-11-12 Oracle International Corporation Inter-working with a walled garden floor-controlled system
US20110125909A1 (en) * 2009-11-20 2011-05-26 Oracle International Corporation In-Session Continuation of a Streaming Media Session
US20110125913A1 (en) * 2009-11-20 2011-05-26 Oracle International Corporation Interface for Communication Session Continuation
US9269060B2 (en) * 2009-11-20 2016-02-23 Oracle International Corporation Methods and systems for generating metadata describing dependencies for composable elements
US8533773B2 (en) * 2009-11-20 2013-09-10 Oracle International Corporation Methods and systems for implementing service level consolidated user information management
US9509790B2 (en) * 2009-12-16 2016-11-29 Oracle International Corporation Global presence
US9503407B2 (en) 2009-12-16 2016-11-22 Oracle International Corporation Message forwarding
KR20110072847A (en) * 2009-12-23 2011-06-29 삼성전자주식회사 Dialog management system or method for processing information seeking dialog
US8458172B2 (en) * 2009-12-24 2013-06-04 At&T Intellectual Property I, L.P. Method and apparatus for automated end to end content tracking in peer to peer environments
US8620939B2 (en) * 2010-01-25 2013-12-31 Sepaton, Inc. System and method for summarizing data
US8140533B1 (en) * 2010-01-26 2012-03-20 Google Inc. Harvesting relational tables from lists on the web
US20110219016A1 (en) * 2010-03-04 2011-09-08 Src, Inc. Stream Mining via State Machine and High Dimensionality Database
US8874526B2 (en) * 2010-03-31 2014-10-28 Cloudera, Inc. Dynamically processing an event using an extensible data model
US8780115B1 (en) 2010-04-06 2014-07-15 The Pnc Financial Services Group, Inc. Investment management marketing tool
US8791949B1 (en) 2010-04-06 2014-07-29 The Pnc Financial Services Group, Inc. Investment management marketing tool
US8954413B2 (en) * 2010-04-12 2015-02-10 Thermopylae Sciences and Technology Methods and apparatus for adaptively harvesting pertinent data
CN102236681A (en) * 2010-04-20 2011-11-09 中兴通讯股份有限公司 System and method for storing and obtaining data
US8412510B2 (en) * 2010-04-21 2013-04-02 Fisher-Rosemount Systems, Inc. Methods and apparatus to display localized resources in process control applications
US8490056B2 (en) * 2010-04-28 2013-07-16 International Business Machines Corporation Automatic identification of subroutines from test scripts
US9880860B2 (en) * 2010-05-05 2018-01-30 Microsoft Technology Licensing, Llc Automatic return to synchronization context for asynchronous computations
US9135297B2 (en) * 2010-05-17 2015-09-15 Green Sql Ltd. Database translation system and method
US8850354B1 (en) * 2010-05-21 2014-09-30 Google Inc. Multi-window web-based application structure
US8266102B2 (en) * 2010-05-26 2012-09-11 International Business Machines Corporation Synchronization of sequential access storage components with backup catalog
US8608063B2 (en) 2010-05-28 2013-12-17 Securitymetrics, Inc. Systems and methods employing intermittent scanning techniques to identify sensitive information in data
EP2580637A1 (en) * 2010-06-09 2013-04-17 Decernis, LLC System and method for analysis and visualization of emerging issues in manufacturing and supply chain management
US8423444B1 (en) 2010-07-02 2013-04-16 The Pnc Financial Services Group, Inc. Investor personality tool
US8417614B1 (en) 2010-07-02 2013-04-09 The Pnc Financial Services Group, Inc. Investor personality tool
US8468391B2 (en) * 2010-08-04 2013-06-18 International Business Machines Corporation Utilizing log event ontology to deliver user role specific solutions for problem determination
JP5124001B2 (en) * 2010-09-08 2013-01-23 シャープ株式会社 Translation device, translation method, a computer program and a recording medium
US8713168B2 (en) 2010-09-22 2014-04-29 The Nielsen Company (Us), Llc Methods and apparatus to determine impressions using distributed demographic information
US9177017B2 (en) * 2010-09-27 2015-11-03 Microsoft Technology Licensing, Llc Query constraint encoding with type-based state machine
US9684712B1 (en) * 2010-09-28 2017-06-20 EMC IP Holding Company LLC Analyzing tenant-specific data
US9215275B2 (en) 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
FR2965952B1 (en) * 2010-10-06 2013-06-21 Commissariat Energie Atomique Method for updating a reverse index and server implementing such process
US8818963B2 (en) 2010-10-29 2014-08-26 Microsoft Corporation Halloween protection in a multi-version database system
US8965751B2 (en) * 2010-11-01 2015-02-24 Microsoft Corporation Providing multi-lingual translation for third party content feed applications
US8806615B2 (en) * 2010-11-04 2014-08-12 Mcafee, Inc. System and method for protecting specified data combinations
CN102469153B (en) 2010-11-04 2015-01-28 财团法人工业技术研究院 System and method for peer-to-peer live streaming
US9710429B1 (en) * 2010-11-12 2017-07-18 Google Inc. Providing text resources updated with translation input from multiple users
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
CN102486798A (en) * 2010-12-03 2012-06-06 腾讯科技(深圳)有限公司 Data loading method and device
US9008884B2 (en) 2010-12-15 2015-04-14 Symbotic Llc Bot position sensing
US9111238B2 (en) * 2010-12-17 2015-08-18 Microsoft Technology Licensing, Llc Data feed having customizable analytic and visual behavior
US9069557B2 (en) 2010-12-17 2015-06-30 Microsoft Technology Licensing, LLP Business intelligence document
US9110957B2 (en) 2010-12-17 2015-08-18 Microsoft Technology Licensing, Llc Data mining in a business intelligence document
US9104992B2 (en) 2010-12-17 2015-08-11 Microsoft Technology Licensing, Llc Business application publication
US9171272B2 (en) 2010-12-17 2015-10-27 Microsoft Technology Licensing, LLP Automated generation of analytic and visual behavior
US9304672B2 (en) 2010-12-17 2016-04-05 Microsoft Technology Licensing, Llc Representation of an interactive document as a graph of entities
US9024952B2 (en) 2010-12-17 2015-05-05 Microsoft Technology Licensing, Inc. Discovering and configuring representations of data via an insight taxonomy
US9336184B2 (en) 2010-12-17 2016-05-10 Microsoft Technology Licensing, Llc Representation of an interactive document as a graph of entities
US9864966B2 (en) 2010-12-17 2018-01-09 Microsoft Technology Licensing, Llc Data mining in a business intelligence document
US8688651B2 (en) 2011-01-25 2014-04-01 Sepaton, Inc. Dynamic deduplication
JP5910510B2 (en) * 2011-01-27 2016-04-27 日本電気株式会社 UI (UserInterface) creating support device, UI creation support method and program
US9171079B2 (en) * 2011-01-28 2015-10-27 Cisco Technology, Inc. Searching sensor data
US9275093B2 (en) * 2011-01-28 2016-03-01 Cisco Technology, Inc. Indexing sensor data
US9225793B2 (en) * 2011-01-28 2015-12-29 Cisco Technology, Inc. Aggregating sensor data
US9058560B2 (en) 2011-02-17 2015-06-16 Superior Edge, Inc. Methods, apparatus and systems for generating, updating and executing an invasive species control plan
US9852470B1 (en) 2011-02-28 2017-12-26 The Pnc Financial Services Group, Inc. Time period analysis tools for wealth management transactions
US9665908B1 (en) 2011-02-28 2017-05-30 The Pnc Financial Services Group, Inc. Net worth analysis tools
US8321316B1 (en) 2011-02-28 2012-11-27 The Pnc Financial Services Group, Inc. Income analysis tools for wealth management
US8374940B1 (en) 2011-02-28 2013-02-12 The Pnc Financial Services Group, Inc. Wealth allocation analysis tools
WO2012122516A1 (en) * 2011-03-10 2012-09-13 Redoak Logic, Inc. System and method for converting large data sets to other information to observations for analysis to reveal complex relationship
US9104663B1 (en) * 2011-03-18 2015-08-11 Emc Corporation Dynamic allocation of memory for memory intensive operators
JP5769816B2 (en) 2011-03-18 2015-08-26 ザ ニールセン カンパニー (ユーエス) エルエルシー A method and apparatus for identifying media impressions
WO2012139098A1 (en) 2011-04-07 2012-10-11 Pneuron Corp. Legacy application migration to real time, parallel performance cloud
WO2012139127A1 (en) 2011-04-08 2012-10-11 Wombat Security Technologies, Inc. Context-aware training systems, apparatuses, and methods
US9373267B2 (en) * 2011-04-08 2016-06-21 Wombat Security Technologies, Inc. Method and system for controlling context-aware cybersecurity training
US9558677B2 (en) * 2011-04-08 2017-01-31 Wombat Security Technologies, Inc. Mock attack cybersecurity training system and methods
US9824609B2 (en) 2011-04-08 2017-11-21 Wombat Security Technologies, Inc. Mock attack cybersecurity training system and methods
US9098831B1 (en) 2011-04-19 2015-08-04 The Pnc Financial Services Group, Inc. Search and display of human resources information
US9904726B2 (en) 2011-05-04 2018-02-27 Black Hills IP Holdings, LLC. Apparatus and method for automated and assisted patent claim mapping and expense planning
US8751298B1 (en) 2011-05-09 2014-06-10 Bank Of America Corporation Event-driven coupon processor alert
US9892419B1 (en) 2011-05-09 2018-02-13 Bank Of America Corporation Coupon deposit account fraud protection system
CN103765415A (en) * 2011-05-11 2014-04-30 谷歌公司 Parallel generation of topics from documents
US20120291011A1 (en) * 2011-05-12 2012-11-15 Google Inc. User Interfaces to Assist in Creating Application Scripts
US20120296910A1 (en) * 2011-05-16 2012-11-22 Michal Skubacz Method and system for retrieving information
US8856452B2 (en) 2011-05-31 2014-10-07 Illinois Institute Of Technology Timing-aware data prefetching for microprocessors
US20160321316A1 (en) * 2011-06-03 2016-11-03 Gdial Inc. Systems and methods for atomizing and individuating data as data quanta
US9146133B2 (en) * 2011-06-06 2015-09-29 Honeywell International Inc. Methods and systems for displaying procedure information on an aircraft display
US8924974B1 (en) * 2011-06-08 2014-12-30 Workday, Inc. System for error checking of process definitions for batch processes
US9626458B2 (en) * 2011-06-14 2017-04-18 Nec Corporation Evaluation model generation device, evaluation model generation method, and evaluation model generation program
US8538949B2 (en) * 2011-06-17 2013-09-17 Microsoft Corporation Interactive web crawler
US9378138B2 (en) * 2011-06-29 2016-06-28 International Business Machines Corporation Conservative garbage collection and access protection
US9946991B2 (en) 2011-06-30 2018-04-17 3M Innovative Properties Company Methods using multi-dimensional representations of medical codes
WO2013000494A1 (en) * 2011-06-30 2013-01-03 Telefonaktiebolaget L M Ericsson (Publ) Flexible data communication
US8935676B2 (en) * 2011-08-07 2015-01-13 Hewlett-Packard Development Company, L.P. Automated test failure troubleshooter
US20130042235A1 (en) * 2011-08-10 2013-02-14 International Business Machines Corporation Dynamic bootstrap literal processing within a managed runtime environment
US8510320B2 (en) * 2011-08-10 2013-08-13 Sap Ag Silent migration of business process binaries
US8688499B1 (en) * 2011-08-11 2014-04-01 Google Inc. System and method for generating business process models from mapped time sequenced operational and transaction data
US20130055078A1 (en) * 2011-08-24 2013-02-28 Salesforce.Com, Inc. Systems and methods for improved navigation of a multi-page display
US9195911B2 (en) * 2011-08-30 2015-11-24 5D Robotics, Inc. Modular robotic manipulation
KR20140067095A (en) 2011-09-09 2014-06-03 심보틱 엘엘씨 Storage and retrieval system case unit detection
JP5733124B2 (en) * 2011-09-12 2015-06-10 富士通株式会社 Data management apparatus, a data management system, data management method, and a program
US9208476B2 (en) 2011-09-12 2015-12-08 Microsoft Technology Licensing, Llc Counting and resetting broadcast system badge counters
US8694462B2 (en) 2011-09-12 2014-04-08 Microsoft Corporation Scale-out system to acquire event data
US8595322B2 (en) * 2011-09-12 2013-11-26 Microsoft Corporation Target subscription for a notification distribution system
US8898628B2 (en) 2011-09-23 2014-11-25 Ahmad RAZA Method and an apparatus for developing software
JP5594269B2 (en) * 2011-09-29 2014-09-24 コニカミノルタ株式会社 File name creation device, an image forming apparatus, and the file name creation program
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US8181254B1 (en) 2011-10-28 2012-05-15 Google Inc. Setting default security features for use with web applications and extensions
CA2756102A1 (en) * 2011-11-01 2012-01-03 Cit Global Mobile Division Method and system for localizing an application on a computing device
KR20140096127A (en) * 2011-11-15 2014-08-04 아브 이니티오 테크놀로지 엘엘시 Data clustering based on candidate queries
US9529829B1 (en) * 2011-11-18 2016-12-27 Veritas Technologies Llc System and method to facilitate the use of processed data from a storage system to perform tasks
US8762390B2 (en) * 2011-11-21 2014-06-24 Nec Laboratories America, Inc. Query specific fusion for image retrieval
US9203805B2 (en) 2011-11-23 2015-12-01 Cavium, Inc. Reverse NFA generation and processing
CA2759516A1 (en) 2011-11-24 2013-05-24 Ibm Canada Limited - Ibm Canada Limitee Serialization of pre-initialized objects
US20130139115A1 (en) * 2011-11-29 2013-05-30 Microsoft Corporation Recording touch information
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
KR101277145B1 (en) 2011-12-07 2013-06-20 한국과학기술연구원 Method For Transforming Intermediate Language by Using Common Representation, System And Computer-Readable Recording Medium with Program Therefor
KR101349628B1 (en) 2011-12-07 2014-01-09 한국과학기술연구원 Method For Transforming Intermediate Language by Using Operator, System And Computer-Readable Recording Medium with Program Therefor
US9171158B2 (en) 2011-12-12 2015-10-27 International Business Machines Corporation Dynamic anomaly, association and clustering detection
WO2013090555A1 (en) 2011-12-13 2013-06-20 Pneuron Corp. Pneuron distributed analytics
US9235396B2 (en) * 2011-12-13 2016-01-12 Microsoft Technology Licensing, Llc Optimizing data partitioning for data-parallel computing
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US20130246336A1 (en) 2011-12-27 2013-09-19 Mcafee, Inc. System and method for providing data protection workflows in a network environment
US9541921B2 (en) 2011-12-30 2017-01-10 International Business Machines Corporation Measuring performance of an appliance
WO2013105222A1 (en) * 2012-01-11 2013-07-18 株式会社日立製作所 Work support device, work support method and work support program
US8762315B2 (en) 2012-02-07 2014-06-24 Alan A. Yelsey Interactive portal for facilitating the representation and exploration of complexity
US9015255B2 (en) 2012-02-14 2015-04-21 The Nielsen Company (Us), Llc Methods and apparatus to identify session users with cookie information
WO2013128238A1 (en) * 2012-02-29 2013-09-06 Freescale Semiconductor, Inc. Debugging method and computer program product
US9760380B2 (en) * 2012-03-14 2017-09-12 Microsoft Technology Licensing, Llc Using grammar to serialize and de-serialize objects
US20130254139A1 (en) * 2012-03-21 2013-09-26 Xiaoguang Lei Systems and methods for building a universal intelligent assistant with learning capabilities
US8813046B2 (en) * 2012-03-23 2014-08-19 Infosys Limited System and method for internationalization encoding
WO2013147821A1 (en) 2012-03-29 2013-10-03 Empire Technology Development, Llc Determining user key-value storage needs from example queries
KR101617987B1 (en) 2012-04-01 2016-05-03 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 Machine learning for database migration source
US9418083B2 (en) * 2012-04-20 2016-08-16 Patterson Thuente Pedersen, P.A. System for computerized evaluation of patent-related information
US8914809B1 (en) 2012-04-24 2014-12-16 Open Text S.A. Message broker system and method
US20130290326A1 (en) * 2012-04-25 2013-10-31 Yevgeniy Lebedev System for dynamically linking tags with a virtual repository of a registered user
US8914387B2 (en) * 2012-04-26 2014-12-16 Sap Ag Calculation models using annotations for filter optimization
US8856168B2 (en) * 2012-04-30 2014-10-07 Hewlett-Packard Development Company, L.P. Contextual application recommendations
US9141290B2 (en) * 2012-05-13 2015-09-22 Emc Corporation Snapshot mechanism
US8694508B2 (en) * 2012-06-04 2014-04-08 Sap Ag Columnwise storage of point data
US8830714B2 (en) 2012-06-07 2014-09-09 International Business Machines Corporation High speed large scale dictionary matching
KR101655998B1 (en) 2012-06-11 2016-09-22 더 닐슨 컴퍼니 (유에스) 엘엘씨 Methods and apparatus to share online media impressions data
US9465835B2 (en) 2012-06-25 2016-10-11 Sap Se Columnwise spatial aggregation
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
CA2918472A1 (en) * 2012-07-16 2014-01-23 Pneuron Corp. A method and process for enabling distributing cache data sources for query processing and distributed disk caching of large data and analysis requests
US9727350B2 (en) * 2012-07-26 2017-08-08 Entit Software Llc Localizing computer program code
FR2994296B1 (en) * 2012-08-01 2015-06-19 Netwave data processing Method for situational analysis
US9141623B2 (en) 2012-08-03 2015-09-22 International Business Machines Corporation System for on-line archiving of content in an object store
US9113590B2 (en) 2012-08-06 2015-08-25 Superior Edge, Inc. Methods, apparatus, and systems for determining in-season crop status in an agricultural crop and alerting users
CN107256366A (en) 2012-08-30 2017-10-17 尼尔森(美国)有限公司 Methods and apparatus to collect distributed user information for media impressions and search terms
US9375582B2 (en) 2012-08-31 2016-06-28 Nuvectra Corporation Touch screen safety controls for clinician programmer
US9594877B2 (en) 2012-08-31 2017-03-14 Nuvectra Corporation Virtual reality representation of medical devices
US8868199B2 (en) 2012-08-31 2014-10-21 Greatbatch Ltd. System and method of compressing medical maps for pulse generator or database storage
US9471753B2 (en) 2012-08-31 2016-10-18 Nuvectra Corporation Programming and virtual reality representation of stimulation parameter Groups
US9615788B2 (en) 2012-08-31 2017-04-11 Nuvectra Corporation Method and system of producing 2D representations of 3D pain and stimulation maps and implant models on a clinician programmer
US8812125B2 (en) 2012-08-31 2014-08-19 Greatbatch Ltd. Systems and methods for the identification and association of medical devices
US9259577B2 (en) 2012-08-31 2016-02-16 Greatbatch Ltd. Method and system of quick neurostimulation electrode configuration and positioning
US8903496B2 (en) 2012-08-31 2014-12-02 Greatbatch Ltd. Clinician programming system and method
US8761897B2 (en) 2012-08-31 2014-06-24 Greatbatch Ltd. Method and system of graphical representation of lead connector block and implantable pulse generators on a clinician programmer
US9180302B2 (en) 2012-08-31 2015-11-10 Greatbatch Ltd. Touch screen finger position indicator for a spinal cord stimulation programming device
US9507912B2 (en) 2012-08-31 2016-11-29 Nuvectra Corporation Method and system of simulating a pulse generator on a clinician programmer
US9767255B2 (en) 2012-09-05 2017-09-19 Nuvectra Corporation Predefined input for clinician programmer data entry
US8983616B2 (en) 2012-09-05 2015-03-17 Greatbatch Ltd. Method and system for associating patient records with pulse generators
US8757485B2 (en) 2012-09-05 2014-06-24 Greatbatch Ltd. System and method for using clinician programmer and clinician programming data for inventory and manufacturing prediction and control
CN103685399B (en) * 2012-09-17 2018-03-23 腾讯科技(深圳)有限公司 Unix-Log method of virtual containers, apparatus and system
WO2014052099A3 (en) 2012-09-25 2014-05-30 A10 Networks, Inc. Load distribution in data networks
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US8996551B2 (en) * 2012-10-01 2015-03-31 Longsand Limited Managing geographic region information
US9881260B2 (en) 2012-10-03 2018-01-30 Moovel North America, Llc Mobile ticketing
US8862585B2 (en) * 2012-10-10 2014-10-14 Polytechnic Institute Of New York University Encoding non-derministic finite automation states efficiently in a manner that permits simple and fast union operations
US8954940B2 (en) * 2012-10-12 2015-02-10 International Business Machines Corporation Integrating preprocessor behavior into parsing
US9213707B2 (en) * 2012-10-12 2015-12-15 Watson Manwaring Conner Ordered access of interrelated data files
US9081900B2 (en) 2012-10-15 2015-07-14 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for mining temporal requirements from block diagram models of control systems
US9916306B2 (en) 2012-10-19 2018-03-13 Sdl Inc. Statistical linguistic analysis of source content
US9165006B2 (en) 2012-10-25 2015-10-20 Blackberry Limited Method and system for managing data storage and access on a client device
US8943110B2 (en) * 2012-10-25 2015-01-27 Blackberry Limited Method and system for managing data storage and access on a client device
WO2014070223A1 (en) * 2012-11-02 2014-05-08 Ge Intelligent Platforms, Inc. Apparatus and method of content containment
WO2014076731A1 (en) * 2012-11-13 2014-05-22 Hitachi, Ltd. Storage system, storage system control method, and storage control device
US8874617B2 (en) * 2012-11-14 2014-10-28 International Business Machines Corporation Determining potential enterprise partnerships
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US20140201629A1 (en) * 2013-01-17 2014-07-17 Microsoft Corporation Collaborative learning through user generated knowledge
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9330659B2 (en) 2013-02-25 2016-05-03 Microsoft Technology Licensing, Llc Facilitating development of a spoken natural language interface
US9658999B2 (en) 2013-03-01 2017-05-23 Sony Corporation Language processing method and electronic device
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US20140258837A1 (en) * 2013-03-11 2014-09-11 Oracle International Corporation Method and system for implementing contextual widgets
US9195712B2 (en) 2013-03-12 2015-11-24 Microsoft Technology Licensing, Llc Method of converting query plans to native code
US9152466B2 (en) * 2013-03-13 2015-10-06 Barracuda Networks, Inc. Organizing file events by their hierarchical paths for multi-threaded synch and parallel access system, apparatus, and method of operation
US9098878B2 (en) * 2013-03-15 2015-08-04 Locus, LP Stratified composite portfolios of investment securities
US9530094B2 (en) 2013-03-15 2016-12-27 Yahoo! Inc. Jabba-type contextual tagger
US9262555B2 (en) * 2013-03-15 2016-02-16 Yahoo! Inc. Machine for recognizing or generating Jabba-type sequences
US9245299B2 (en) 2013-03-15 2016-01-26 Locus Lp Segmentation and stratification of composite portfolios of investment securities
US20170220603A1 (en) * 2013-03-15 2017-08-03 Locus Analytics Llc Proximity search and navigation for functional information systems
US9766832B2 (en) 2013-03-15 2017-09-19 Hitachi Data Systems Corporation Systems and methods of locating redundant data using patterns of matching fingerprints
EP2972978A4 (en) * 2013-03-15 2016-11-09 Locus Analytics Llc Syntactic tagging in a domain-specific context
US9171207B1 (en) * 2013-03-15 2015-10-27 Peter L Olcott Method and system for recognizing machine generated character glyphs in graphic images
US9519914B2 (en) * 2013-04-30 2016-12-13 The Nielsen Company (Us), Llc Methods and apparatus to determine ratings information for online media presentations
EP3005174A4 (en) 2013-05-30 2017-02-22 Clearstory Data Inc Apparatus and method for collaboratively analyzing data from disparate data sources
US20140358616A1 (en) * 2013-06-03 2014-12-04 International Business Machines Corporation Asset management for a computer-based system using aggregated weights of changed assets
US9256611B2 (en) 2013-06-06 2016-02-09 Sepaton, Inc. System and method for multi-scale navigation of data
US9779182B2 (en) * 2013-06-07 2017-10-03 Microsoft Technology Licensing, Llc Semantic grouping in search
US9588956B2 (en) * 2013-07-12 2017-03-07 Ab Initio Technology Llc Parser generation
WO2015019364A3 (en) * 2013-08-08 2015-11-26 Subramanian JAYAKUMAR Graph based ontology modeling system
US9313294B2 (en) 2013-08-12 2016-04-12 The Nielsen Company (Us), Llc Methods and apparatus to de-duplicate impression information
US9507563B2 (en) * 2013-08-30 2016-11-29 Cavium, Inc. System and method to traverse a non-deterministic finite automata (NFA) graph generated for regular expression patterns with advanced features
US9367449B2 (en) * 2013-09-11 2016-06-14 Owtware Holdings Limited, BVI Hierarchical garbage collection in an object relational database system
JP2015060423A (en) * 2013-09-19 2015-03-30 株式会社東芝 Voice translation system, method of voice translation and program
US9767222B2 (en) 2013-09-27 2017-09-19 International Business Machines Corporation Information sets for data management
JP2015075941A (en) * 2013-10-09 2015-04-20 株式会社インタラクティブソリューションズ Portable terminal device, slide information management system and control method of portable terminal
US9678973B2 (en) 2013-10-15 2017-06-13 Hitachi Data Systems Corporation Multi-node hybrid deduplication
US20150112708A1 (en) * 2013-10-23 2015-04-23 The Charlotte-Mecklenburg Hospital Authority D/B/A Carolinas Healthcare System Methods and systems for merging and analyzing healthcare data
US9262136B2 (en) * 2013-11-07 2016-02-16 Netronome Systems, Inc. Allocate instruction and API call that contain a sybmol for a non-memory resource
WO2015080567A1 (en) 2013-11-27 2015-06-04 Mimos Berhad A method for converting a knowledge base to binary form
EP2881899A3 (en) 2013-12-09 2015-08-26 Deutsche Telekom AG System and method for automated aggregation of descriptions of individual object variants
US9852163B2 (en) 2013-12-30 2017-12-26 The Nielsen Company (Us), Llc Methods and apparatus to de-duplicate impression information
US9237138B2 (en) 2013-12-31 2016-01-12 The Nielsen Company (Us), Llc Methods and apparatus to collect distributed user information for media impressions and search terms
US9729353B2 (en) * 2014-01-09 2017-08-08 Netronome Systems, Inc. Command-driven NFA hardware engine that encodes multiple automatons
US9904630B2 (en) 2014-01-31 2018-02-27 Cavium, Inc. Finite automata processing based on a top of stack (TOS) memory
US9602532B2 (en) 2014-01-31 2017-03-21 Cavium, Inc. Method and apparatus for optimizing finite automata processing
US9665633B2 (en) * 2014-02-19 2017-05-30 Snowflake Computing, Inc. Data management systems and methods
US9718558B2 (en) 2014-02-26 2017-08-01 Honeywell International Inc. Pilot centered system and method for decluttering aircraft displays
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9489576B2 (en) 2014-03-26 2016-11-08 F12 Solutions, LLC. Crop stand analysis
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US20150287336A1 (en) * 2014-04-04 2015-10-08 Bank Of America Corporation Automated phishing-email training
US9806943B2 (en) 2014-04-24 2017-10-31 A10 Networks, Inc. Enabling planned upgrade/downgrade of network devices without impacting network sessions
US9600599B2 (en) * 2014-05-13 2017-03-21 Spiral Genetics, Inc. Prefix burrows-wheeler transformation with fast operations on compressed data
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US20150358413A1 (en) * 2014-06-09 2015-12-10 International Business Machines Corporation Saving and restoring a state of a web application
US9398029B2 (en) 2014-08-01 2016-07-19 Wombat Security Technologies, Inc. Cybersecurity training system with automated application of branded content
US9906367B2 (en) * 2014-08-05 2018-02-27 Sap Se End-to-end tamper protection in presence of cloud integration
US20160048499A1 (en) * 2014-08-14 2016-02-18 International Business Machines Corporation Systematic tuning of text analytic annotators
US9792604B2 (en) 2014-12-19 2017-10-17 moovel North Americ, LLC Method and system for dynamically interactive visually validated mobile ticketing
US9417850B2 (en) * 2015-01-10 2016-08-16 Logics Research Centre Grace˜operator for changing order and scope of implicit parameters
US9922037B2 (en) * 2015-01-30 2018-03-20 Splunk Inc. Index time, delimiter based extractions and previewing for use in indexing
US9454157B1 (en) 2015-02-07 2016-09-27 Usman Hafeez System and method for controlling flight operations of an unmanned aerial vehicle
US9454907B2 (en) 2015-02-07 2016-09-27 Usman Hafeez System and method for placement of sensors through use of unmanned aerial vehicles
US20160239487A1 (en) * 2015-02-12 2016-08-18 Microsoft Technology Licensing, Llc Finding documents describing solutions to computing issues
CN104599623B (en) * 2015-02-27 2017-07-04 京东方科技集团股份有限公司 An image display method, apparatus, and an electronic device
US9836599B2 (en) * 2015-03-13 2017-12-05 Microsoft Technology Licensing, Llc Implicit process detection and automation from unstructured activity
US9830603B2 (en) 2015-03-20 2017-11-28 Microsoft Technology Licensing, Llc Digital identity and authorization for machines with replaceable parts
US9891933B2 (en) 2015-06-24 2018-02-13 International Business Machines Corporation Automated testing of GUI mirroring
US20170039644A1 (en) * 2015-08-04 2017-02-09 Sungard Consulting Services Llc System and associated methodology of creating order lifecycles via daisy chain linkage
RU2611257C1 (en) * 2015-10-01 2017-02-21 Акционерное общество "Калужский научно-исследовательский институт телемеханических устройств" Method of preparation, storage and transfer of operational and command information in telecode control complexes
US9740601B2 (en) * 2015-12-01 2017-08-22 International Business Machines Corporation Globalization testing management service configuration
US9767011B2 (en) 2015-12-01 2017-09-19 International Business Machines Corporation Globalization testing management using a set of globalization testing operations
WO2017116259A1 (en) * 2015-12-28 2017-07-06 Limited Liability Company Mail.Ru Dynamic contextual re-ordering of suggested query hints
US9715375B1 (en) * 2016-01-27 2017-07-25 International Business Machines Corporation Parallel compilation of software application
US20180018302A1 (en) * 2016-07-15 2018-01-18 Sap Se Intelligent text reduction for graphical interface elements
US9830345B1 (en) * 2016-09-26 2017-11-28 Semmle Limited Content-addressable data storage

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4041462A (en) * 1976-04-30 1977-08-09 International Business Machines Corporation Data processing system featuring subroutine linkage operations using hardware controlled stacks
US6085186A (en) * 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US6161103A (en) * 1998-05-06 2000-12-12 Epiphany, Inc. Method and apparatus for creating aggregates for use in a datamart
US6189004B1 (en) * 1998-05-06 2001-02-13 E. Piphany, Inc. Method and apparatus for creating a datamart and for creating a query structure for the datamart

Family Cites Families (173)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4905138A (en) * 1985-10-17 1990-02-27 Westinghouse Electric Corp. Meta-interpreter
US5610828A (en) * 1986-04-14 1997-03-11 National Instruments Corporation Graphical system for modelling a process and associated method
US4918526A (en) * 1987-03-20 1990-04-17 Digital Equipment Corporation Apparatus and method for video signal image processing under control of a data processing system
US4870610A (en) * 1987-08-25 1989-09-26 Bell Communications Research, Inc. Method of operating a computer system to provide customed I/O information including language translation
US5105353A (en) * 1987-10-30 1992-04-14 International Business Machines Corporation Compressed LR parsing table and method of compressing LR parsing tables
JP3478820B2 (en) * 1989-09-01 2003-12-15 オブジェクトスター インターナショナル インコーポレイテッド System to run the program
CA2066724C (en) 1989-09-01 2000-12-05 Helge Knudsen Operating system and data base
US5214785A (en) * 1989-09-27 1993-05-25 Third Point Systems, Inc. Controller with keyboard emulation capability for control of host computer operation
US5276880A (en) * 1989-12-15 1994-01-04 Siemens Corporate Research, Inc. Method for parsing and representing multi-versioned computer programs, for simultaneous and synchronous processing of the plural parses
US5313575A (en) * 1990-06-13 1994-05-17 Hewlett-Packard Company Processing method for an iconic programming system
US5787432A (en) * 1990-12-06 1998-07-28 Prime Arithmethics, Inc. Method and apparatus for the generation, manipulation and display of data structures
US5369577A (en) * 1991-02-01 1994-11-29 Wang Laboratories, Inc. Text searching system
US5430836A (en) * 1991-03-01 1995-07-04 Ast Research, Inc. Application control module for common user access interface
US5507030A (en) * 1991-03-07 1996-04-09 Digitial Equipment Corporation Successive translation, execution and interpretation of computer program having code at unknown locations due to execution transfer instructions having computed destination addresses
US5487147A (en) * 1991-09-05 1996-01-23 International Business Machines Corporation Generation of error messages and error recovery for an LL(1) parser
US5410701A (en) * 1992-01-29 1995-04-25 Devonrue Ltd. System and method for analyzing programmed equations
US6104836A (en) * 1992-02-19 2000-08-15 8×8, Inc. Computer architecture for video data processing and method thereof
US5303392A (en) 1992-02-27 1994-04-12 Sun Microsystems, Inc. Accessing current symbol definitions in a dynamically configurable operating system
US5339406A (en) * 1992-04-03 1994-08-16 Sun Microsystems, Inc. Reconstructing symbol definitions of a dynamically configurable operating system defined at the time of a system crash
US5625554A (en) * 1992-07-20 1997-04-29 Xerox Corporation Finite-state transduction of related word forms for text indexing and retrieval
US6139201A (en) * 1994-12-22 2000-10-31 Caterpillar Inc. Integrated authoring and translation system
DE69333568T2 (en) * 1992-09-04 2004-10-21 Caterpillar Inc Integrated entwurf- and translation system.
US5375241A (en) 1992-12-21 1994-12-20 Microsoft Corporation Method and system for dynamic-link library
US6219830B1 (en) * 1993-03-23 2001-04-17 Apple Computer, Inc. Relocatable object code format and method for loading same into a computer system
US5819083A (en) * 1993-09-02 1998-10-06 International Business Machines Corporation Minimal sufficient buffer space for data redistribution in a parallel database system
US5701482A (en) * 1993-09-03 1997-12-23 Hughes Aircraft Company Modular array processor architecture having a plurality of interconnected load-balanced parallel processing nodes
US6279029B1 (en) * 1993-10-12 2001-08-21 Intel Corporation Server/client architecture and method for multicasting on a computer network
US5583761A (en) * 1993-10-13 1996-12-10 Kt International, Inc. Method for automatic displaying program presentations in different languages
US5499358A (en) * 1993-12-10 1996-03-12 Novell, Inc. Method for storing a database in extended attributes of a file system
CA2138830A1 (en) * 1994-03-03 1995-09-04 Jamie Joanne Marschner Real-time administration-translation arrangement
US5467472A (en) * 1994-04-15 1995-11-14 Microsoft Corporation Method and system for generating and maintaining property sets with unique format identifiers
US5655148A (en) * 1994-05-27 1997-08-05 Microsoft Corporation Method for automatically configuring devices including a network adapter without manual intervention and without prior configuration information
US5870608A (en) * 1994-06-03 1999-02-09 Synopsys, Inc. Method and apparatus for displaying text including context sensitive information derived from parse tree
US5778371A (en) * 1994-09-13 1998-07-07 Kabushiki Kaisha Toshiba Code string processing system and method using intervals
US6083282A (en) * 1994-10-21 2000-07-04 Microsoft Corporation Cross-project namespace compiler and method
US5850518A (en) * 1994-12-12 1998-12-15 Northrup; Charles J. Access-method-independent exchange
US5794050A (en) * 1995-01-04 1998-08-11 Intelligent Text Processing, Inc. Natural language understanding system
US6324558B1 (en) * 1995-02-14 2001-11-27 Scott A. Wilber Random number generator and generation method
US6061675A (en) * 1995-05-31 2000-05-09 Oracle Corporation Methods and apparatus for classifying terminology utilizing a knowledge catalog
US5694523A (en) * 1995-05-31 1997-12-02 Oracle Corporation Content processing system for discourse
US5887120A (en) * 1995-05-31 1999-03-23 Oracle Corporation Method and apparatus for determining theme for discourse
US5768580A (en) * 1995-05-31 1998-06-16 Oracle Corporation Methods and apparatus for dynamic classification of discourse
US5748975A (en) * 1995-07-06 1998-05-05 Sun Microsystems, Inc. System and method for textual editing of structurally-represented computer programs with on-the-fly typographical display
US5721939A (en) * 1995-08-03 1998-02-24 Xerox Corporation Method and apparatus for tokenizing text
US5826087A (en) * 1995-10-02 1998-10-20 Lohmann; William C. Method and apparatus for cross calling programs of different lexical scoping methodology
RU2115159C1 (en) * 1995-10-24 1998-07-10 Владимир Олегович Сафонов Method and device for checking use of record fields during compilation
US6366933B1 (en) * 1995-10-27 2002-04-02 At&T Corp. Method and apparatus for tracking and viewing changes on the web
US5797004A (en) * 1995-12-08 1998-08-18 Sun Microsystems, Inc. System and method for caching and allocating thread synchronization constructs
US5822580A (en) * 1996-01-19 1998-10-13 Object Technology Licensing Corp. Object oriented programming based global registry system, method, and article of manufacture
US6076088A (en) * 1996-02-09 2000-06-13 Paik; Woojin Information extraction system and method using concept relation concept (CRC) triples
US5974372A (en) * 1996-02-12 1999-10-26 Dst Systems, Inc. Graphical user interface (GUI) language translator
CA2175711A1 (en) * 1996-05-01 1997-11-02 Lee Richard Nackman Incremental compilation of c++ programs
US5832484A (en) * 1996-07-02 1998-11-03 Sybase, Inc. Database system with methods for parallel lock management
WO1998004980A1 (en) * 1996-07-26 1998-02-05 Ori Software Development Ltd. Database apparatus
US6044367A (en) * 1996-08-02 2000-03-28 Hewlett-Packard Company Distributed I/O store
US6101508A (en) * 1997-08-01 2000-08-08 Hewlett-Packard Company Clustered file management for network resources
US5961594A (en) * 1996-09-26 1999-10-05 International Business Machines Corporation Remote node maintenance and management method and system in communication networks using multiprotocol agents
US5787425A (en) * 1996-10-01 1998-07-28 International Business Machines Corporation Object-oriented data mining framework mechanism
US6148000A (en) * 1996-10-02 2000-11-14 International Business Machines Corporation Merging of data cells at network nodes
US5903756A (en) * 1996-10-11 1999-05-11 Sun Microsystems, Incorporated Variable lookahead parser generator
US5916305A (en) * 1996-11-05 1999-06-29 Shomiti Systems, Inc. Pattern recognition in data communications using predictive parsers
US6065039A (en) * 1996-11-14 2000-05-16 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Dynamic synchronous collaboration framework for mobile agents
US6460058B2 (en) * 1996-12-06 2002-10-01 Microsoft Corporation Object-oriented framework for hyperlink navigation
US6286093B1 (en) * 1996-12-10 2001-09-04 Logic Express Systems, Inc. Multi-bus programmable interconnect architecture
JP3008872B2 (en) * 1997-01-08 2000-02-14 日本電気株式会社 Gui system automatic operation device and operation macro execution device
US5951653A (en) * 1997-01-29 1999-09-14 Microsoft Corporation Method and system for coordinating access to objects of different thread types in a shared memory space
US5900871A (en) * 1997-03-10 1999-05-04 International Business Machines Corporation System and method for managing multiple cultural profiles in an information handling system
US6470389B1 (en) * 1997-03-14 2002-10-22 Lucent Technologies Inc. Hosting a network service on a cluster of servers using a single-address image
US6108754A (en) * 1997-04-03 2000-08-22 Sun Microsystems, Inc. Thread-local synchronization construct cache
US6138170A (en) * 1997-04-07 2000-10-24 Novell, Inc. Method and system for integrating external functions into an application environment
US5915255A (en) * 1997-04-23 1999-06-22 Sun Microsystems, Inc. Method and apparatus for referencing nodes using links
US6115782A (en) * 1997-04-23 2000-09-05 Sun Micosystems, Inc. Method and apparatus for locating nodes in a carded heap using a card marking structure and a node advance value
US6104715A (en) * 1997-04-28 2000-08-15 International Business Machines Corporation Merging of data cells in an ATM network
US6389379B1 (en) * 1997-05-02 2002-05-14 Axis Systems, Inc. Converification system and method
US5960382A (en) * 1997-07-07 1999-09-28 Lucent Technologies Inc. Translation of an initially-unknown message
US5897642A (en) * 1997-07-14 1999-04-27 Microsoft Corporation Method and system for integrating an object-based application with a version control system
WO1999005593A1 (en) * 1997-07-25 1999-02-04 British Telecommunications Public Limited Company Software system generation
US6003066A (en) * 1997-08-14 1999-12-14 International Business Machines Corporation System for distributing a plurality of threads associated with a process initiating by one data processing station among data processing stations
US5963742A (en) * 1997-09-08 1999-10-05 Lucent Technologies, Inc. Using speculative parsing to process complex input data
US5991539A (en) * 1997-09-08 1999-11-23 Lucent Technologies, Inc. Use of re-entrant subparsing to facilitate processing of complicated input data
DE19741475A1 (en) * 1997-09-19 1999-03-25 Siemens Ag Message translation method for in communication system
US6094650A (en) * 1997-12-15 2000-07-25 Manning & Napier Information Services Database analysis using a probabilistic ontology
US6098093A (en) * 1998-03-19 2000-08-01 International Business Machines Corp. Maintaining sessions in a clustered server environment
US6393386B1 (en) * 1998-03-26 2002-05-21 Visual Networks Technologies, Inc. Dynamic modeling of complex networks and prediction of impacts of faults therein
US6173316B1 (en) * 1998-04-08 2001-01-09 Geoworks Corporation Wireless communication device with markup language based man-machine interface
US6092036A (en) * 1998-06-02 2000-07-18 Davox Corporation Multi-lingual data processing system and system and method for translating text used in computer software utilizing an embedded translator
US6237005B1 (en) * 1998-06-29 2001-05-22 Compaq Computer Corporation Web server mechanism for processing multiple transactions in an interpreted language execution environment
US6226630B1 (en) * 1998-07-22 2001-05-01 Compaq Computer Corporation Method and apparatus for filtering incoming information using a search engine and stored queries defining user folders
US6378126B2 (en) * 1998-09-29 2002-04-23 International Business Machines Corporation Compilation of embedded language statements in a source code program
US6564368B1 (en) * 1998-10-01 2003-05-13 Call Center Technology, Inc. System and method for visual application development without programming
US6327587B1 (en) * 1998-10-05 2001-12-04 Digital Archaeology, Inc. Caching optimization with disk and/or memory cache management
US6654953B1 (en) * 1998-10-09 2003-11-25 Microsoft Corporation Extending program languages with source-program attribute tags
US6564263B1 (en) * 1998-12-04 2003-05-13 International Business Machines Corporation Multimedia content description framework
US6269189B1 (en) * 1998-12-29 2001-07-31 Xerox Corporation Finding selected character strings in text and providing information relating to the selected character strings
US6671273B1 (en) * 1998-12-31 2003-12-30 Compaq Information Technologies Group L.P. Method for using outgoing TCP/IP sequence number fields to provide a desired cluster node
US6453321B1 (en) * 1999-02-11 2002-09-17 Ibm Corporation Structured cache for persistent objects
US6324581B1 (en) * 1999-03-03 2001-11-27 Emc Corporation File server system using file system storage, data movers, and an exchange of meta data among data movers for file locking and direct access to shared file systems
US6748481B1 (en) * 1999-04-06 2004-06-08 Microsoft Corporation Streaming information appliance with circular buffer for receiving and selectively reading blocks of streaming information
US6446071B1 (en) * 1999-04-26 2002-09-03 International Business Machines Corporation Method and system for user-specific management of applications in a heterogeneous server environment
US6321190B1 (en) * 1999-06-28 2001-11-20 Avaya Technologies Corp. Infrastructure for developing application-independent language modules for language-independent applications
US6199195B1 (en) * 1999-07-08 2001-03-06 Science Application International Corporation Automatically generated objects within extensible object frameworks and links to enterprise resources
US7152228B2 (en) * 1999-07-08 2006-12-19 Science Applications International Corporation Automatically generated objects within extensible object frameworks and links to enterprise resources
US6275790B1 (en) * 1999-07-28 2001-08-14 International Business Machines Corporation Introspective editor system, program, and method for software translation
US6311151B1 (en) * 1999-07-28 2001-10-30 International Business Machines Corporation System, program, and method for performing contextual software translations
US6442565B1 (en) * 1999-08-13 2002-08-27 Hiddenmind Technology, Inc. System and method for transmitting data content in a computer network
US6490666B1 (en) * 1999-08-20 2002-12-03 Microsoft Corporation Buffering data in a hierarchical data storage environment
US6434568B1 (en) * 1999-08-31 2002-08-13 Accenture Llp Information services patterns in a netcentric environment
US6507833B1 (en) * 1999-09-13 2003-01-14 Oracle Corporation Method and apparatus for dynamically rendering components at run time
US6353925B1 (en) * 1999-09-22 2002-03-05 Compaq Computer Corporation System and method for lexing and parsing program annotations
US6826744B1 (en) * 1999-10-01 2004-11-30 Vertical Computer Systems, Inc. System and method for generating web sites in an arbitrary object framework
US6704737B1 (en) * 1999-10-18 2004-03-09 Fisher-Rosemount Systems, Inc. Accessing and updating a configuration database from distributed physical locations within a process control system
US6728692B1 (en) * 1999-12-23 2004-04-27 Hewlett-Packard Company Apparatus for a multi-modal ontology engine
US6502097B1 (en) * 1999-12-23 2002-12-31 Microsoft Corporation Data structure for efficient access to variable-size data objects
US6721723B1 (en) * 1999-12-23 2004-04-13 1St Desk Systems, Inc. Streaming metatree data structure for indexing information in a data base
US6654952B1 (en) * 2000-02-03 2003-11-25 Sun Microsystems, Inc. Region based optimizations using data dependence graphs
US6819339B1 (en) * 2000-02-24 2004-11-16 Eric Morgan Dowling Web browser with multilevel functions
EP1272912A2 (en) * 2000-02-25 2003-01-08 Synquiry Technologies, Ltd Conceptual factoring and unification of graphs representing semantic models
US20020062245A1 (en) * 2000-03-09 2002-05-23 David Niu System and method for generating real-time promotions on an electronic commerce world wide website to increase the likelihood of purchase
US6986132B1 (en) * 2000-04-28 2006-01-10 Sun Microsytems, Inc. Remote incremental program binary compatibility verification using API definitions
US6865716B1 (en) * 2000-05-05 2005-03-08 Aspect Communication Corporation Method and apparatus for dynamic localization of documents
US6862610B2 (en) * 2000-05-08 2005-03-01 Ideaflood, Inc. Method and apparatus for verifying the identity of individuals
US6591274B1 (en) * 2000-05-31 2003-07-08 Sprint Communications Company, L.P. Computer software framework and method for accessing data from one or more datastores for use by one or more computing applications
US6658652B1 (en) * 2000-06-08 2003-12-02 International Business Machines Corporation Method and system for shadow heap memory leak detection and other heap analysis in an object-oriented environment during real-time trace processing
JP2002007169A (en) * 2000-06-23 2002-01-11 Nec Corp System for measuring grammar comprehension rate
US6670969B1 (en) * 2000-06-29 2003-12-30 Curl Corporation Interface frames for threads
US7100153B1 (en) * 2000-07-06 2006-08-29 Microsoft Corporation Compiler generation of a late binding interface implementation
US6658416B1 (en) * 2000-07-10 2003-12-02 International Business Machines Corporation Apparatus and method for creating an indexed database of symbolic data for use with trace data of a computer program
US20030070159A1 (en) * 2000-08-04 2003-04-10 Intrinsic Graphics, Inc. Object decription language
US7027975B1 (en) * 2000-08-08 2006-04-11 Object Services And Consulting, Inc. Guided natural language interface system and method
US6981245B1 (en) * 2000-09-14 2005-12-27 Sun Microsystems, Inc. Populating binary compatible resource-constrained devices with content verified using API definitions
US6711672B1 (en) * 2000-09-22 2004-03-23 Vmware, Inc. Method and system for implementing subroutine calls and returns in binary translation sub-systems of computers
US6640231B1 (en) * 2000-10-06 2003-10-28 Ontology Works, Inc. Ontology for database design and application development
US6993568B1 (en) * 2000-11-01 2006-01-31 Microsoft Corporation System and method for providing language localization for server-based applications with scripts
US7111283B2 (en) * 2000-11-29 2006-09-19 Microsoft Corporation Program history in a computer programming language
US6748585B2 (en) * 2000-11-29 2004-06-08 Microsoft Corporation Computer programming language pronouns
US6883087B1 (en) * 2000-12-15 2005-04-19 Palm, Inc. Processing of binary data for compression
US6981031B2 (en) * 2000-12-15 2005-12-27 International Business Machines Corporation Language independent message management for multi-node application systems
US6885985B2 (en) * 2000-12-18 2005-04-26 Xerox Corporation Terminology translation for unaligned comparable corpora using category based translation probabilities
US6678677B2 (en) * 2000-12-19 2004-01-13 Xerox Corporation Apparatus and method for information retrieval using self-appending semantic lattice
US6950793B2 (en) * 2001-01-12 2005-09-27 International Business Machines Corporation System and method for deriving natural language representation of formal belief structures
US7249018B2 (en) * 2001-01-12 2007-07-24 International Business Machines Corporation System and method for relating syntax and semantics for a conversational speech application
US6539460B2 (en) * 2001-01-19 2003-03-25 International Business Machines Corporation System and method for storing data sectors with header and trailer information in a disk cache supporting memory compression
US6964014B1 (en) * 2001-02-15 2005-11-08 Networks Associates Technology, Inc. Method and system for localizing Web pages
US20020133523A1 (en) * 2001-03-16 2002-09-19 Anthony Ambler Multilingual graphic user interface system and method
US6847974B2 (en) * 2001-03-26 2005-01-25 Us Search.Com Inc Method and apparatus for intelligent data assimilation
US6721943B2 (en) * 2001-03-30 2004-04-13 Intel Corporation Compile-time memory coalescing for dynamic arrays
US7024546B2 (en) * 2001-04-03 2006-04-04 Microsoft Corporation Automatically enabling editing languages of a software program
US20030005412A1 (en) * 2001-04-06 2003-01-02 Eanes James Thomas System for ontology-based creation of software agents from reusable components
US7210022B2 (en) * 2001-05-15 2007-04-24 Cloudshield Technologies, Inc. Apparatus and method for interconnecting a processor to co-processors using a shared memory as the communication interface
US7099885B2 (en) * 2001-05-25 2006-08-29 Unicorn Solutions Method and system for collaborative ontology modeling
US7266832B2 (en) * 2001-06-14 2007-09-04 Digeo, Inc. Advertisement swapping using an aggregator for an interactive television system
US20030004703A1 (en) * 2001-06-28 2003-01-02 Arvind Prabhakar Method and system for localizing a markup language document
US20030009323A1 (en) * 2001-07-06 2003-01-09 Max Adeli Application platform for developing mono-lingual and multi-lingual systems and generating user presentations
US6820075B2 (en) * 2001-08-13 2004-11-16 Xerox Corporation Document-centric system with auto-completion
US6732090B2 (en) * 2001-08-13 2004-05-04 Xerox Corporation Meta-document management system with user definable personalities
US6778979B2 (en) * 2001-08-13 2004-08-17 Xerox Corporation System for automatically generating queries
US7003764B2 (en) * 2001-10-12 2006-02-21 Sun Microsystems, Inc. Method and apparatus for dynamic configuration of a lexical analysis parser
US7432940B2 (en) * 2001-10-12 2008-10-07 Canon Kabushiki Kaisha Interactive animation of sprites in a video production
CA2359831A1 (en) * 2001-10-24 2003-04-24 Jeffrey C. Turnham Method and system for multiple level parsing
US20030210329A1 (en) * 2001-11-08 2003-11-13 Aagaard Kenneth Joseph Video system and methods for operating a video system
US7308449B2 (en) 2002-02-01 2007-12-11 John Fairweather System and method for managing collections of data on a network
CA2474716A1 (en) * 2002-02-01 2003-08-07 The Cleveland Clinic Foundation Adjustable stimulation device and method of using same
US7191106B2 (en) * 2002-03-29 2007-03-13 Agilent Technologies, Inc. Method and system for predicting multi-variable outcomes
US7155438B2 (en) * 2002-05-01 2006-12-26 Bea Systems, Inc. High availability for event forwarding
US7093023B2 (en) * 2002-05-21 2006-08-15 Washington University Methods, systems, and devices using reprogrammable hardware for high-speed processing of streaming data to find a redefinable pattern and respond thereto
US6915291B2 (en) * 2002-06-07 2005-07-05 International Business Machines Corporation Object-oriented query execution data structure
US7127520B2 (en) * 2002-06-28 2006-10-24 Streamserve Method and system for transforming input data streams
US6970969B2 (en) * 2002-08-29 2005-11-29 Micron Technology, Inc. Multiple segment data object management
US7464254B2 (en) * 2003-01-09 2008-12-09 Cisco Technology, Inc. Programmable processor apparatus integrating dedicated search registers and dedicated state machine registers with associated execution hardware to support rapid application of rulesets to data
US7340724B2 (en) * 2003-08-15 2008-03-04 Laszlo Systems, Inc. Evaluating expressions in a software environment
US7624385B2 (en) * 2005-03-30 2009-11-24 Alcatel-Lucent Usa Inc. Method for handling preprocessing in source code transformation
US7512634B2 (en) * 2006-06-05 2009-03-31 Tarari, Inc. Systems and methods for processing regular expressions
US7899977B2 (en) * 2006-12-08 2011-03-01 Pandya Ashish A Programmable intelligent search memory

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4041462A (en) * 1976-04-30 1977-08-09 International Business Machines Corporation Data processing system featuring subroutine linkage operations using hardware controlled stacks
US6085186A (en) * 1996-09-20 2000-07-04 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US6102969A (en) * 1996-09-20 2000-08-15 Netbot, Inc. Method and system using information written in a wrapper description language to execute query on a network
US6161103A (en) * 1998-05-06 2000-12-12 Epiphany, Inc. Method and apparatus for creating aggregates for use in a datamart
US6189004B1 (en) * 1998-05-06 2001-02-13 E. Piphany, Inc. Method and apparatus for creating a datamart and for creating a query structure for the datamart

Cited By (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7539982B2 (en) * 2004-05-07 2009-05-26 International Business Machines Corporation XML based scripting language
US20060004827A1 (en) * 2004-05-07 2006-01-05 International Business Machines Corporation XML based scripting language
US7765219B2 (en) * 2005-02-24 2010-07-27 Microsoft Corporation Sort digits as number collation in server
US20060190452A1 (en) * 2005-02-24 2006-08-24 Microsoft Corporation Sort digits as number collation in server
US20150142766A1 (en) * 2006-11-20 2015-05-21 Palantir Technologies, Inc. Creating Data in a Data Store Using a Dynamic Ontology
US20090228507A1 (en) * 2006-11-20 2009-09-10 Akash Jain Creating data in a data store using a dynamic ontology
US9589014B2 (en) 2006-11-20 2017-03-07 Palantir Technologies, Inc. Creating data in a data store using a dynamic ontology
US8856153B2 (en) * 2006-11-20 2014-10-07 Palantir Technologies, Inc. Creating data in a data store using a dynamic ontology
US7962495B2 (en) * 2006-11-20 2011-06-14 Palantir Technologies, Inc. Creating data in a data store using a dynamic ontology
US20110213791A1 (en) * 2006-11-20 2011-09-01 Akash Jain Creating data in a data store using a dynamic ontology
US20130275446A1 (en) * 2006-11-20 2013-10-17 Palantir Technologies, Inc. Creating data in a data store using a dynamic ontology
US8489623B2 (en) 2006-11-20 2013-07-16 Palantir Technologies, Inc. Creating data in a data store using a dynamic ontology
US9201920B2 (en) * 2006-11-20 2015-12-01 Palantir Technologies, Inc. Creating data in a data store using a dynamic ontology
US20090083195A1 (en) * 2007-09-25 2009-03-26 Andrew Aymeloglu Feature-based similarity measure for market instruments
US8494941B2 (en) 2007-09-25 2013-07-23 Palantir Technologies, Inc. Feature-based similarity measure for market instruments
US9378524B2 (en) 2007-10-03 2016-06-28 Palantir Technologies, Inc. Object-oriented time series generator
US9229966B2 (en) 2008-09-15 2016-01-05 Palantir Technologies, Inc. Object modeling for exploring large data sets
US8782025B2 (en) 2009-03-10 2014-07-15 Ims Software Services Ltd. Systems and methods for address intelligence
US20100235315A1 (en) * 2009-03-10 2010-09-16 Karen Swenson Systems and Methods for Address Intelligence
US8386498B2 (en) 2009-08-05 2013-02-26 Loglogic, Inc. Message descriptions
US20110035390A1 (en) * 2009-08-05 2011-02-10 Loglogic, Inc. Message Descriptions
US9880987B2 (en) 2011-08-25 2018-01-30 Palantir Technologies, Inc. System and method for parameterizing documents for automatic workflow generation
US9836523B2 (en) 2012-10-22 2017-12-05 Palantir Technologies Inc. Sharing information between nexuses that use different classification schemes for information access control
US9898335B1 (en) 2012-10-22 2018-02-20 Palantir Technologies Inc. System and method for batch evaluation programs
US9081975B2 (en) 2012-10-22 2015-07-14 Palantir Technologies, Inc. Sharing information between nexuses that use different classification schemes for information access control
US9852205B2 (en) 2013-03-15 2017-12-26 Palantir Technologies Inc. Time-sensitive cube
US8855999B1 (en) 2013-03-15 2014-10-07 Palantir Technologies Inc. Method and system for generating a parser and parsing complex data
US8909656B2 (en) 2013-03-15 2014-12-09 Palantir Technologies Inc. Filter chains with associated multipath views for exploring large data sets
US8903717B2 (en) 2013-03-15 2014-12-02 Palantir Technologies Inc. Method and system for generating a parser and parsing complex data
US9495353B2 (en) 2013-03-15 2016-11-15 Palantir Technologies Inc. Method and system for generating a parser and parsing complex data
US9898167B2 (en) 2013-03-15 2018-02-20 Palantir Technologies Inc. Systems and methods for providing a tagging interface for external content
US8930897B2 (en) 2013-03-15 2015-01-06 Palantir Technologies Inc. Data integration tool
US9740369B2 (en) 2013-03-15 2017-08-22 Palantir Technologies Inc. Systems and methods for providing a tagging interface for external content
US9223773B2 (en) 2013-08-08 2015-12-29 Palatir Technologies Inc. Template system for custom document generation
US8938686B1 (en) 2013-10-03 2015-01-20 Palantir Technologies Inc. Systems and methods for analyzing performance of an entity
US9009827B1 (en) 2014-02-20 2015-04-14 Palantir Technologies Inc. Security sharing system
US9923925B2 (en) 2014-02-20 2018-03-20 Palantir Technologies Inc. Cyber security sharing and identification system
US9946738B2 (en) 2014-11-05 2018-04-17 Palantir Technologies, Inc. Universal data pipeline
US9483506B2 (en) 2014-11-05 2016-11-01 Palantir Technologies, Inc. History preserving data pipeline
US9229952B1 (en) 2014-11-05 2016-01-05 Palantir Technologies, Inc. History preserving data pipeline system and method
US9984152B2 (en) 2014-12-15 2018-05-29 Palantir Technologies Inc. Data integration tool
US9727560B2 (en) 2015-02-25 2017-08-08 Palantir Technologies Inc. Systems and methods for organizing and identifying documents via hierarchies and dimensions of tags
US9576015B1 (en) 2015-09-09 2017-02-21 Palantir Technologies, Inc. Domain-specific language for dataset transformations
US9965534B2 (en) 2015-09-09 2018-05-08 Palantir Technologies, Inc. Domain-specific language for dataset transformations
US9946777B1 (en) 2016-12-19 2018-04-17 Palantir Technologies Inc. Systems and methods for facilitating data transformation
US9922108B1 (en) 2017-01-05 2018-03-20 Palantir Technologies Inc. Systems and methods for facilitating data transformation

Also Published As

Publication number Publication date Type
US7240330B2 (en) 2007-07-03 grant
US8099722B2 (en) 2012-01-17 grant
US20040024720A1 (en) 2004-02-05 application
WO2003065634A2 (en) 2003-08-07 application
US20040073913A1 (en) 2004-04-15 application
US7308449B2 (en) 2007-12-11 grant
WO2003065175A2 (en) 2003-08-07 application
US7685083B2 (en) 2010-03-23 grant
WO2003065180A3 (en) 2003-11-27 application
WO2003065240A1 (en) 2003-08-07 application
US7555755B2 (en) 2009-06-30 grant
US20030182529A1 (en) 2003-09-25 application
WO2003065177A2 (en) 2003-08-07 application
WO2003065171A3 (en) 2004-02-05 application
WO2003065252A1 (en) 2003-08-07 application
WO2003065213A1 (en) 2003-08-07 application
WO2003065212A1 (en) 2003-08-07 application
US20040031024A1 (en) 2004-02-12 application
US20080016503A1 (en) 2008-01-17 application
WO2003065173A9 (en) 2004-11-25 application
WO2004002044A3 (en) 2004-06-10 application
WO2003065177A3 (en) 2003-12-04 application
WO2003065179A3 (en) 2003-11-06 application
WO2003065175A3 (en) 2003-11-06 application
US7143087B2 (en) 2006-11-28 grant
WO2003065173A3 (en) 2005-03-10 application
US20060235811A1 (en) 2006-10-19 application
EP1527414A2 (en) 2005-05-04 application
US7158984B2 (en) 2007-01-02 grant
US7533069B2 (en) 2009-05-12 grant
US20070112714A1 (en) 2007-05-17 application
US20030200531A1 (en) 2003-10-23 application
US7103749B2 (en) 2006-09-05 grant
US7210130B2 (en) 2007-04-24 grant
US20030187633A1 (en) 2003-10-02 application
US20030171911A1 (en) 2003-09-11 application
WO2003065179A2 (en) 2003-08-07 application
US7369984B2 (en) 2008-05-06 grant
US20030187854A1 (en) 2003-10-02 application
WO2003065171A2 (en) 2003-08-07 application
US20030191752A1 (en) 2003-10-09 application
WO2003065173A2 (en) 2003-08-07 application
US20030188004A1 (en) 2003-10-02 application
WO2003065634A3 (en) 2004-02-05 application
WO2003065180A2 (en) 2003-08-07 application
WO2004002044A2 (en) 2003-12-31 application
US7328430B2 (en) 2008-02-05 grant

Similar Documents

Publication Publication Date Title
Van Rossum et al. Python language reference manual
Barrett et al. The smt-lib standard: Version 2.0
Daciuk et al. Incremental construction of minimal acyclic finite-state automata
Brooker et al. A general translation program for phrase structure languages
Crockford JavaScript: The Good Parts: The Good Parts
Jones Haskell 98 language and libraries: the revised report
Horowitz Fundamentals of programming languages
US6918107B2 (en) Programming language extensions for processing data representation language objects and related applications
Lesk et al. Lex: A lexical analyzer generator
US5724576A (en) Method and apparatus for the generation and manipulation of data structures
US6792576B1 (en) System and method of automatic wrapper grammar generation
Huck et al. Jedi: Extracting and synthesizing information from the web
Wirth The programming language Oberon
Flanagan JavaScript: the definitive guide
Gulwani Automating string processing in spreadsheets using input-output examples
US5317509A (en) Regular expression factoring for scanning multibyte character sets with a single byte automata machine
Hejlsberg The C# Programming Language, 2/e
US20040172234A1 (en) Hardware accelerator personality compiler
Flanagan et al. The Ruby Programming Language: Everything You Need to Know
Scott Programming language pragmatics
US5787432A (en) Method and apparatus for the generation, manipulation and display of data structures
Marlow Haskell 2010 language report
Rydeheard et al. Computational category theory
Gulwani et al. Spreadsheet data manipulation using examples
Ferragina et al. Structuring labeled trees for optimal succinctness, and beyond