U.S. patent application number 10/806406 was filed with the patent office on 2004-12-02 for methods and systems for representing, using and displaying time-varying information on the semantic web.
Invention is credited to Dean, Michael Anthony.
Application Number | 20040243531 10/806406 |
Document ID | / |
Family ID | 33457024 |
Filed Date | 2004-12-02 |
United States Patent
Application |
20040243531 |
Kind Code |
A1 |
Dean, Michael Anthony |
December 2, 2004 |
Methods and systems for representing, using and displaying
time-varying information on the Semantic Web
Abstract
Methods and systems for providing start and stop properties to
Semantic Web structured resources and statements are disclosed. The
start and stop properties can specify a lifetime during which a
resource or statement can be valid. A call or query to one or more
resources can return statement data including the start and stop
properties for the resources and/or statements. Dates can be
specified with the call or query such that the returned resources
and statements have lifetimes including the specified dates. Screen
images of the data can display subject and object nodes and
predicate arcs for the selected dates. A sequence of screen images
can display a timeline of nodes and arcs by adding or hiding nodes
and arcs to correspond with the start and stop properties of the
statements. Tools are provided for the user to navigate through the
sequence.
Inventors: |
Dean, Michael Anthony;
(Liberty Lake, WA) |
Correspondence
Address: |
Finnegan, Henderson, Farabow,
Garrett & Dunner, L.L.P.
1300 I Street, N.W.
Washington
DC
20005-3315
US
|
Family ID: |
33457024 |
Appl. No.: |
10/806406 |
Filed: |
March 23, 2004 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
60465925 |
Apr 28, 2003 |
|
|
|
Current U.S.
Class: |
706/55 |
Current CPC
Class: |
G06F 40/30 20200101 |
Class at
Publication: |
706/055 |
International
Class: |
G06N 007/08 |
Goverment Interests
[0002] The United States Government has a paid-up license in this
invention and the right in limited circumstances to require the
patent owner to license to others on reasonable terms as provided
for by the terms of Contract No. F30602-00-C-0178 awarded by the
Defense Advanced Research Projects Agency.
Claims
What is claimed is:
1. A computer-implemented method of displaying on a display
Semantic Web statements having start properties and stop properties
related to lifetimes of said statements, comprising: displaying
subjects and objects of said statements as nodes; displaying
predicates of said statements as arcs connecting said nodes; and
hiding said nodes and said arcs for particular ones of said
statements when a selected display timeframe is outside said
lifetimes of said particular ones of said statements.
2. The method of claim 1, wherein hiding comprises painting said
nodes and arcs for said particular ones of said statements to match
a background of said display.
3. The method of claim 1 comprising providing tools for a user to
select said timeframe.
4. The method of claim 3, wherein said tools include providing said
user with an option to select a start timeframe corresponding to an
earliest one of said start properties of said statements.
5. The method of claim 4, wherein said tools include providing said
user with an option to select an end timeframe corresponding to a
latest one of said stop properties of said statements.
6. The method of claim 5, wherein said tools include providing said
user with an option to select at least one timeframe increment for
displaying said statements in temporal order corresponding to said
start properties and said stop properties of said statements.
7. The method of claim 1, comprising labeling each of said nodes
with a value of a literal property of said node dependent on said
start property and said stop property of said statement associated
with said node.
8. A system for displaying graphical representations of time
varying information for Semantic Web structured statements,
comprising. a processor connected to at least one Semantic Web
resource and receiving input from a user, said input including a
query to retrieve selected ones of said statements matching said
query; at least one application program interface (API) determining
said selected ones of said statements from said at least one
Semantic Web structured resource, said API obtaining start and stop
properties for subjects, objects, and statements of said selected
ones of said matching statements, said API determining graphical
representation data from said selected ones of said statements and
said properties, said start and stop properties defining lifetimes
of said statements; and a display connected to said processor, said
processor receiving said graphical representation data from said at
least one API and controlling said display to present graphical
representations of said selected ones of said statements said input
from said user including a timeframe, said processor controlling
said display to hide said graphical representations of determined
ones of said statements when said timeframe is outside said
lifetimes of said determined ones of said statements.
9. The system of claim 8, further comprising an application tool
set operable by said user to input said timeframe, wherein said
user can select timeframe increments corresponding to said start
properties and said stop properties of said selected ones of said
statements.
10. A method of displaying graphical representations of time
varying information for Semantic Web structured statements from at
least one Semantic Web resource, comprising: receiving a query to
retrieve selected ones of said statements matching said query;
determining said selected ones of said statements from said at
least one Semantic Web structured resource; obtaining start and
stop properties for subjects and objects of said selected ones of
said statements, said start and stop properties defining lifetimes
of said statements; determining graphical representation data for
said selected ones of said statements and said properties;
filtering said graphical representation data to control a display
to present graphical representations of said selected ones of said
statements; and controlling the display to hide said graphical
representations of determined ones of said statements when
lifetimes of said determined ones of said statements exclude a
selected timeframe.
11. A computer-readable medium comprising instructions for
controlling a processor to associate a lifetime with a Semantic Web
structured statement by: implementing a start property for said
statement denoting a start time when said statement becomes valid;
and implementing a stop property for said statement denoting a stop
time when said statement ceases to be valid, a time interval
between said start time and said stop time denoting said lifetime
of said statement.
12. The computer-readable medium of claim 11, further comprising
instructions for controlling a processor to implement said start
property and said stop property as a datatype taken from a listing
of XML Schema Datatypes including an xsd:dateTime datatype, an
xsd:date datatype and an xsd:gYear datatype.
13. The computer-readable medium of claim 11, further comprising
instructions for controlling a processor to display a plurality of
said statements on a display by: displaying subjects and objects of
said statements as nodes; displaying predicates of said statements
as arcs connecting said nodes; and hiding said nodes and said arcs
for particular ones of said statements when a selected display
timeframe is outside said lifetimes of said particular ones of said
statements.
14. The computer-readable medium of claim 13, wherein the
instructions further comprise instructions for controlling a
processor to hide said nodes and said arcs by painting said nodes
and said arcs for said particular ones of said statements to match
a background of said display.
15. The computer-readable medium of claim 13, wherein the
instructions further comprise instructions for controlling a
processor to display a toolset operable by a user to select said
timeframe.
16. The computer-readable medium of claim 15, wherein the
instructions further comprise instructions to control a processor
to display a toolset operable by a user to select a start timeframe
corresponding to an earliest one of said start properties of said
statements.
17. The computer-readable medium of claim 16, wherein the
instructions further comprise instructions to control a processor
to display a toolset operable by a user to select an end timeframe
corresponding to a latest one of said stop properties of said
statements.
18. The computer-readable medium of claim 17, wherein the
instructions further comprise instructions to control a processor
to display a toolset operable by a user to select at least one
timeframe increment for displaying said statements in temporal
order corresponding to said start properties and said stop
properties of said statements.
Description
RELATED APPLICATIONS
[0001] This application claims priority to, and incorporates by
reference, the entire disclosure of U.S. Provisional Patent
Application No. 60/465,925, filed on Apr. 28, 2003. This
application is co-pending with a related patent application
entitled "Methods and Apparatus for Focusing Search Results on the
Semantic Web" (Attorney Docket No. 03-4027PRO1), by the same
inventor and having assignee in common, filed concurrently herewith
and incorporated by reference herein in its entirety.
FIELD
[0003] The methods and systems relate to representing, using and
displaying information, and more particularly to methods and
systems for representing, using and displaying time-varying
information on the Semantic Web.
BACKGROUND
[0004] The Semantic Web is an evolving collection of software tools
and content, which provides information on the Internet, or World
Wide Web, in such a way that it can be readily used by intelligent
agents and other computer programs. Information on the Semantic
Web, rather than being in natural language text, can be maintained
in a structure workable by both computers and people. The Resource
Description Framework (RDF) from the World Wide Web Consortium
(W3C) underlies most Semantic Web efforts. RDF consists of
statements (subject-predicate-object triples) made about instances
of specific classes (similar to an object-oriented programming
language).
[0005] The Resource Description Framework (RDF) is a general
framework for how to describe an Internet resource such as a Web
site and its content. An Internet resource is defined herein as a
resource with a Uniform Resource Identifier (URI), including the
Uniform Resource Locators (URLs) that identify Web sites as well as
specific Web pages. Resources can also be physical objects (such as
people) represented on Web pages. As with known HyperText Markup
Language (HTML) META tags, the RDF description statements, encased
as part of an Extensible Markup Language (XML) section, can be
included within a Web page (HTML file), or can be in separate
files.
[0006] RDF description statements can be represented as graphs
containing nodes (instances or string literals) and arcs
(statements). FIG. 6A provides an example of such a graph for an
RDF statement of the form, "Mike Thornton has a father Joe
Thornton." For this RDF statement, "Mike Thornton" is the subject,
"father" is the predicate, and "Joe Thornton" is the object. In the
exemplary diagram, or graph of FIG. 6A, the ovals can illustrate
nodes representing resources (ovals 2 and 4), and arcs can
represent the named property, as shown by arc 6. The direction of
the arc can be from subject (2) to object (4). It can be understood
that other representations besides the illustrated ovals and
directional arcs can be used.
[0007] FIG. 6B illustrates a graph of a collection of statements in
which "Mike Thornton" (using an abbreviated form to represent a
full URI) can be both the subject and object of various ones of the
statements, including, "Jason Thornton has a father Mike Thornton,"
and "Mike Thornton is married to Nancy Frier." The subject "Jason
Thornton" is represented by oval 8 and predicate "father" is
represented by arc 10 from subject "Jason Thornton" (oval 8) to
object "Mike Thornton" (oval 2). The object "Nancy Frier" is
represented by oval 12 and predicate "married to" is represented by
arc 14 from subject "Mike Thornton" (oval 2) to object "Nancy
Frier" (oval 12).
[0008] While such graphs as illustrated in FIGS. 6A and 6B can
pictorially present the properties of subjects and objects, they
can do so in a static fashion. For example, FIG. 6C can illustrate
an extended graph for statements concerning "Mike Thornton" taken
from a genealogical resource. In addition to the statements in FIG.
6B, FIG. 6C can include the statements shown in Table 1.
1 Statement Subject (Identifier) Predicate (Identifier) Object
(Identifier) Mike Thornton has a Mike Thornton (2) mother (16)
Louise Hensley (18) mother Louise Hensley Noah Thornton has a Noah
Thornton (22) father (24) Mike Thornton (2) father Mike Thornton
Jason Thornton has a Jason Thornton (8) mother (20) Nancy Frier
(12) mother Nancy Frier Noah Thornton has a Noah Thornton (22)
mother (26) Nancy Frier (12) mother Nancy Frier Joe Thornton is
married Joe Thornton (4) married to (28) Louise Hensley (18) to
Louise Hensley
[0009] It can be seen that Mike Thornton is neither the subject nor
object of the last three statements in Table 1. However, these
statements can be included in the graphical representation as
having both subjects and objects in common with statements
concerning "Mike Thornton."
[0010] Without additional statements providing dates for such
events as births, deaths or marriages, a user cannot determine time
varying information from the graphs of FIGS. 6A-C. For example, one
cannot assess whether Noah is older or younger than Jason, or the
relative ages of other individuals shown. Other time varying
information, such as multiple marriages, can also present
difficulties for the representations of FIGS. 6A-C. Methods and
systems are needed for determining and graphically representing
such information from Semantic Web structured resources to a
user.
SUMMARY
[0011] The methods and systems described herein can include
providing start and stop time properties to Semantic Web structured
resources and statements. The start and stop time properties can
specify a lifetime during which a resource or statement can be
valid. A call or query to one or more resources can return
statement data including the start and stop properties for the
subjects and objects of the statements, and/or the statements
themselves. Dates can be specified with the call or query such that
the returned statements have lifetimes that include the specified
dates. The specified dates can be used by a filter after obtaining
the data for the query. Screen images of the data can display
subject and object nodes and predicate arcs for the statement data.
A sequence of screen images can display a timeline of nodes and
arcs by adding or hiding nodes and arcs to correspond with the
start and stop properties of the statements and nodes. Tools can be
provided for the user to navigate through the sequence.
[0012] In one embodiment, a method of displaying Semantic Web
statements having start properties and stop properties related to
lifetimes of the statements includes displaying subjects and
objects of the statements as nodes, displaying predicates of the
statements as arcs connecting the nodes and labeled by the
predicates, and hiding the nodes and arcs for subjects, objects,
and statements having lifetimes outside of a timeframe selected by
a user. Hiding can comprise painting the nodes and arcs of those
statements to match a background of the display. One aspect of the
embodiment includes providing tools by which the user can select
the timeframe. The user can be given options to select a start
timeframe corresponding to an earliest one of the start properties
of the statements, to select an end timeframe corresponding to a
latest one of the start properties of the statements, and/or to
select a timeframe increment for displaying the statements in
temporal order corresponding to the start properties and the stop
properties of the statements. Nodes can be labeled with their URI's
or with the value of a literal property, such as a name, which may
itself vary over time based on the start and stop time properties
of statements using that property.
[0013] In one embodiment, a system for displaying graphical
representations of time varying information for Semantic Web
structured statements includes a processor connected to Semantic
Web structured resources and receiving input from a user, including
a query to retrieve selected statements matching the query.
Application program interfaces (APIs) determine the selected
statements from the resource and obtain the start and stop
properties for subjects and objects of the matching statements and
for the statements themselves. The APIs also determine graphical
representation data from the selected statements and their
properties. The processor receives the graphical representation
data and control a display to present the graphical representations
of the selected statements. The processor controls the display to
hide graphical representations of those statements whose lifetime
does not include a timeframe input by the user. The system include
an application tool set operable by the user to input the
timeframe, wherein the user can select timeframe increments
corresponding to the start and stop properties of the selected
statements.
[0014] In one embodiment, a method of displaying graphical
representations of time varying information for Semantic Web
structured statements from Semantic Web resources includes
receiving a query to retrieve selected statements that match a
query, determining the selected statements from the Semantic Web
structured resources, obtaining start and stop properties for
subjects and objects of the selected statements and for the
statements themselves, determining graphical representation data
for the selected statements and the properties, filtering the
graphical representation data to control a display to present
graphical representations of the statements, and controlling the
display to hide the graphical representations of those statements
whose lifetimes exclude a selected timeframe.
[0015] In one embodiment, a computer-readable medium includes
instructions for controlling a processor to associate a lifetime
with a Semantic Web structured statement by implementing a start
property for the statement that denotes a start time when the
statement becomes valid, and implementing a stop property for the
statement that denotes a stop time when the statement ceases to be
valid, wherein the lifetime of the statement is denoted by a time
interval between the start time and the stop time. The start
property and the stop property can be implemented as an XML Schema
Datatype, including an xsd:dateTime datatype, an xsd:date datatype
and/or a xsd:gYear datatype.
[0016] The instructions include instructions for controlling a
processor to display a plurality of statements on a display by
displaying subjects and objects of the statements as nodes,
displaying predicates of the statements as arcs connecting the
nodes, and hiding nodes and arcs for particular statements when a
selected display timeframe is outside the lifetimes of those
particular statements. The instructions include instructions for
controlling a processor to hide the nodes and arcs by painting the
nodes and arcs for those particular statements to match a
background of the display.
[0017] The instructions include instructions for controlling a
processor to display a toolset operable by a user to select said
timeframe. The toolset can be operable by the user to select a
start timeframe corresponding to an earliest one of said start
properties of said statements, to select an end timeframe
corresponding to a latest one of said stop properties of said
statements, and/or to select timeframe increments for displaying
the statements in temporal order corresponding to their start
properties and stop properties.
BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The accompanying drawings, which are incorporated in and
constitute a part of this specification, illustrate several
embodiments of the invention and together with the description,
serve to explain the principles of the invention.
[0019] FIG. 1 illustrates a screen image of a graphical
representation of statements taken from a Semantic Web
resource;
[0020] FIGS. 2A-2I illustrate time varying graphical
representations of the statements of FIG. 1;
[0021] FIG. 3 illustrates a system for providing time varying
graphical representations of statements from a Semantic Web
resource;
[0022] FIG. 4 illustrates a flow chart of a method of implementing
time varying graphical representations of statements from a
Semantic Web resource;
[0023] FIG. 5A illustrates a statement associated directly with
start and stop properties; and
[0024] FIG. 5B illustrates a statement having multiple Interval
instances.
[0025] FIG. 5C illustrates a reified version of a statement.
[0026] FIGS. 6A-6C illustrate prior art graphical representations
of statements from Semantic Web structured resources;
DETAILED DESCRIPTION
[0027] To provide an overall understanding, certain illustrative
embodiments will now be described; however, it will be understood
by one of ordinary skill in the art that the systems and methods
described herein can be adapted and modified to provide systems and
methods for other suitable applications and that other additions
and modifications can be made without departing from the scope of
the systems and methods described herein.
[0028] Unless otherwise specified, the illustrated embodiments can
be understood as providing exemplary features of varying detail of
certain embodiments, and therefore, unless otherwise specified,
features, components, modules, and/or aspects of the illustrations
can be otherwise combined, separated, interchanged, and/or
rearranged without departing from the disclosed systems or methods.
Additionally, the shapes and sizes of components are also exemplary
and unless otherwise specified, can be altered without affecting
the disclosed systems or methods.
[0029] FIG. 1 shows a screen image of a graphical representation of
RDF statements from a Semantic Web resource. For simplicity, the
graphical representation of FIG. 1 can include the statements from
the genealogical resource as in FIG. 6C. The elements in FIG. 1
having numbering offset by 100 from those of FIG. 6C refer to
corresponding elements of the statements described with respect to
FIG. 6C. It can be understood that the numbering of elements in
FIG. 1 and other figures described further herein, is shown for
ease in describing the features of the graphical representations
and need not be viewable by a user.
[0030] In addition to the subject, predicate and object for each
statement, the RDF statements and Semantic Web resources for use
with the methods and systems described herein can have associated
start and stop properties. The time interval starting with a
specified start time and before a specified stop time can be
referred to as the lifetime of the statement or resource. Closed
lifetimes include lifetimes having both start and stop times
specified. Open-ended lifetimes include those having one of the
start or stop times specified. Infinite lifetimes include those
having neither a start or stop time specified.
[0031] The Resource Description Framework (RDF) from the World Wide
Web Consortium (W3C) can underlie most Semantic Web efforts. While
implementation of the start and stop properties can include various
known protocols or datatypes for providing and communicating such
properties among resources and applications, the use of
standardized protocols, properties, and datatypes can be preferred
so as to provide for wide use of the methods and systems described
herein. Thus, in one embodiment, the start and stop properties can
make use of the xsd:dateTime datatype from the W3C XML Schema
Datatypes Recommendation, though other datatypes, e.g., xsd:date or
xsd:gYear, can be used.
[0032] If multiple time intervals are associated with a given
statement or resource (instance), e.g., a marriage relation between
two people who divorce and then remarry each other, then instances
of the class Interval can be used to group start/stop intervals.
Thus, rather than having start and stop properties associated
directly with the object or statement, the statement can have
multiple Interval instances, which each can have its own start and
stop properties.
[0033] FIG. 5A illustrates an example of statement 502 (a reified
verstion of statement is shown in FIG. 5C) having start property
504 and stop property 506 directly associated with statement 502.
FIG. 5B illustrates the example of FIG. 5A, wherein statement 502
has multiple instances 508, 510 of the class Interval 512. Instance
508, with respective start and stop properties 504 and 506,
corresponds with the interval for statement 502 of FIG. 5A, while
instance 510 shows the addition to statement 502 of a second
interval with start property 514. For the marriage relation example
discussed above, the first interval 508 of the marriage can
indicate the marriage (statement 502) began in 1960 (start property
504) and ended in 1970 (stop property 506). The second interval 510
can indicate that the same marriage, i.e., marriage between the
same two people, began again in 1980 (start property 514).
Intervals can be associated with instances as well as with
statements.
[0034] In addition to its start and stop properties the lifetime of
a statement can also be constrained by the lifetimes of resources
that it can reference as a subject or object. For example, a
marriage relation ends when one of the participants dies.
[0035] Start and stop properties will typically be associated with
statements by using RDF statementIDs. The use of RDF statementIDs
can result in both asserted and reified statements. The technique
can be equally applied to content involving only reified
statements. When applied to such content, the graph structure for
each reified statement can be constructed explicitly without the
use of statement IDs.
[0036] The screen images of FIGS. 1 and 2A-I can be described with
relation to the systems 200 and method 400 of FIGS. 3 and 4,
respectively. FIG. 3 illustrates an exemplary system 200 for
presenting time-varying information to a user 202 from one or more
Semantic Web structured resources 204. User 202 can connect to
network 206 via processor 208. One or more servers 210 can
facilitate connections to network 206 by user 202 and resources
204, though it can be understood that processor 208 and/or
resources 204 can be configured for direct connection to network
206. Processor 208 can include a display 212 by which screen
images, such as screen image 100 of FIG. 1 and the screen images of
FIGS. 2A-I can be viewed by the user 202.
[0037] FIG. 4 is a flow chart for a method 400 of implementing time
varying graphical representations of statements from a semantic web
resource. User 202 of FIG. 3 can query (402) one or more Semantic
Web structured resources, such as resources 204 of FIG. 3, using
Application Program Interfaces (APIs) 214. As previously described
with respect to FIGS. 6A-C, APIs for Semantic Web languages can
include models containing sets of RDF Statements, as well as
graphical representations linking resources and statements. In
addition, the APIs 214 of FIG. 3 for the systems and methods
described herein can include obtaining the start and stop
properties for the statements and resources selected by the user
202 and using the start and stop properties in displaying time
varying graphical representation to user 202. While the APIs 214
are shown in FIG. 3 as directly accessible, or as part of processor
208, it can be understood that servers 210 and/or resources 204 can
include APIs 214, or that APIs 214 can be distributed among one or
more servers 210, and/or resources 204.
[0038] Table 2 shows exemplary stop and start properties for the
subjects, objects, and statements of FIG. 1.
2TABLE 2 Subject Object (Identifier) (Identifier) Start Predicate
Start Statement Stop (Identifier) Stop Start Stop 1. Mike Mike
Thornton father (106) Joe Thornton May 29, 1957 Jun. 14, 1992
Thornton has (102) (104) a father Joe May 29, 1957 Mar. 16, 1928
Thornton -- Jun. 14, 1992 2. Jason Jason Thornton father (110) Mike
Thornton Aug. 05, 1987 -- Thornton has (108) -- (102) a father Mike
Aug. 05, 1987 May 29, 1957 Thornton -- -- 3. Mike Mike Thornton
married to (114) Nancy Frier Nov. 02, 1982 -- Thornton is (102)
(112) married to May 29, 1957 Aug. 19, 1958 Nancy Frier -- -- 4.
Mike Mike Thornton mother (116) Louise Hensley May 29, 1957 --
Thorton has a (102) (118) mother May 29, 1957 Nov. 04, 1929 Louise
-- -- Thornton 5. Noah Noah Thornton father (124) Mike Thornton
Feb. 15, 1994 -- Thornton has (122) (102) a father Mike Feb. 15,
1994 May 29, 1957 Thornton -- -- 6. Jason Jason Thornton mother
(120) Nancy Frier Aug. 05, 1987 -- Thornton has (108) (112) a
mother Aug. 05, 1987 Aug. 19, 1958 Nancy Frier -- -- 7. Noah Noah
Thornton mother (126) Nancy Frier Feb. 15, 1994 -- Thornton has
(122) (112) a mother Feb. 15, 1994 Aug. 19, 1958 Nancy Frier -- --
8. Joe Joe Thornton married to (128) Louise Hensley Sep. 17, 1955
Jun. 14, 1992 Thornton is (104) (118) married to Mar. 16, 1928 Nov.
04, 1929 Louise Jun. 14, 1992 -- Hensley
[0039] As indicated in Table 2, start and stop properties can be
associated with the subjects and objects of the statements, as well
as the statements themselves. For example, the subject (Mike
Thornton) of statement 1 of Table 2 has a start date of May 29,
1957, indicating Mike Thornton's birth date, and an open stop date,
indicating Mike Thornton is living. The statement with predicate
father has a start date corresponding to Mike Thornton's birth date
and a stop date of Jun. 14, 1992, indicating the father
relationship with Joe Thornton ends on that date. By looking at the
object (Joe Thornton) stop date, it can be seen that Jun. 14, 1992
corresponds to Joe Thornton's death, the reason for the stop date
for the statement.
[0040] In one embodiment consistent with the invention, start and
start properties can be associated with the statements and
resources. Continuing with the example of statement 1 of Table 2,
in this embodiment statement 1 can have a start property of May 29,
1957, corresponding to the date Mike Thornton was born, and a stop
property of Jun. 14, 1992. Without further information, the stop
property can refer to a number of events by which the father
relationship of Mike and Joe Thornton can end, including Mike's or
Joe's death. In this embodiment, start and stop properties
associated with subjects and objects can be used to obtain start
and stop properties for the related statements as listed in Table
2. For example, the statements "Joe Thornton has a birth event of
Mar. 16, 1928" "Joe Thornton has a death event of Jun. 14, 1992"
can be used to determine the start and stop properties for Joe
Thornton. The absence of a statement for a death event for Mike
Thornton can indicate Mike Thornton has an open stop property. The
above can illustrate that the lifetime of a statement can be
further restrained by the lifetimes of its subject and object.
[0041] Referring again to FIG. 4, APIs 214 of FIG. 3, in response
to the user 202 query, can obtain (404) the statements with start
and stop properties from resources 204 matching the user 202 query,
including the start and stop properties for the statements, as
shown in Table 2, and can determine (406) the corresponding data
for the graphical representations. Processor 208 of FIG. 3 can
receive (408) the data and display (410) the corresponding screen
image, such as image 100 of FIG. 1. Screen image 100 includes a
view 130 in which the graphical representation can be displayed.
Screen image 100 includes one or more file and view manipulation
tools, such as pull down menus 132, action buttons 134 and scroll
bar 136.
[0042] In addition to such known items or tools, screen image 100
includes time varying activation buttons, including START button
138, NEXT button 140, PREV (previous) button 142 and END button
144. It can be understood that varying means for implementing the
functions or actions to be described with relation to the
activation buttons can be used, including pull down menus, icons,
keyboard entries, etc., and that the activation buttons shown in
FIG. 1 are for illustrative purposes and are not restrictive as to
the type, style and/or design of means user 202 can employ for
displaying the time varying data provided by APIs 214. In the
exemplary embodiment of FIG. 4, the choice of an activation button
by user 202 is illustrated at 412.
[0043] When user 202 chooses start button 138, method 400
determines the earliest or base start property date (414), stores
the date as the current active date (416) and displays (418) the
corresponding subjects, objects and/or statements. For the earliest
property, the display can include the one subject or object
corresponding to the earliest start property. In one embodiment,
displaying the corresponding subject or object at 418 includes
hiding subjects, objects and statements not to be displayed as by
painting those subjects, objects, or statements in the background
color of the screen image. For the exemplary statements of Table 2,
the earliest start date (Mar. 16, 1928) corresponds with Joe
Thornton (104). FIG. 2A illustrates the corresponding screen image
100a, wherein the subjects, objects, and statements besides Joe
Thornton (104) are hidden.
[0044] When the NEXT button 140 is chosen, method 400 determines
the next earliest start or stop property date (420) based on the
stored current active date and again the method 400 stores the date
determined as the current active date (422). If a start property is
the next earliest date, as determined at 424, the display of the
corresponding subjects, objects and/or predicates is added (426) to
the screen image. When 424 determines that a stop property is the
next earliest date, the display of the corresponding subjects,
objects and/or predicates is hidden (428) from the screen
image.
[0045] FIGS. 2B-I illustrates selection of the NEXT button 140 from
FIG. 2A. For FIG. 2B, the next earliest date (Nov. 4, 1929)
corresponds to a start property for Louise Hensley. Thus, Louise
Hensley (18) can be added to the screen image. FIGS. 2C-G
correspond to the start property dates for statement 8 ("Joe
Thornton married to (28) Louise Hensley") (Sep. 17, 1955), Mike
Thornton (May 29, 1957), Nancy Frier (Aug. 19, 1958), statement 3
("Mike Thornton married to (14) Nancy Frier") (Nov. 8, 1982), and
Jason Thornton (Aug. 5, 1987), respectively. In one embodiment,
illustrated with particularity in FIGS. 2C and 2F, it can be seen
that the "married to" predicate can also correspond to a change of
the name property used to label the nodes for Louise Hensley and
Nancy Frier, respectively. Such name changes can be reflected in
the statements returned by APIs 214. For example, Table 2 includes
additional statements 3a, 3b, 8a and 8b associated with statements
3 and 8, respectively, as indicated below in Table 2A.
3TABLE 2A Subject (Identifier) Start Predicate Object Statement
Stop (Identifier) (Literal) Start Stop 3a. Person has Person name
"Nancy Frier" Aug. 19, 1958 Nov. 08, 1982 a name "Nancy Aug. 19,
1958 Frier" -- 3b. Person has Person name "Nancy Nov. 02, 1982 a
name "Nancy Aug. 19, 1958 Thornton" Thornton" -- 8a. Person has
Person name "Louise Nov. 04, 1929 Sep. 15, 1955- a name "Louise
Nov. 04, 1929 Hensley" Hensley" -- b. Person has a Person name
"Louise Sep. 17, 1955 name "Louise Nov. 04, 1929 Thornton"
Thornton" --
[0046] Continuing with the selection of NEXT from FIG. 2G, the next
earliest date corresponds to a stop property for Joe Thornton (Jun.
14, 1992). Thus, in FIG. 2H, Joe Thornton (4) and the associated
predicates "father" (6) and "married to" (28) are hidden. The
selection of NEXT from FIG. 2H determines that the next earliest
date corresponds to start date (Feb. 15, 1994) for Noah Thornton
(22). Thus, in FIG. 21 Noah Thornton (22) is added, as well as
predicates "father" (24) and "mother" (26).
[0047] When the PREV button 142 is chosen, the method 400 can hide
(430) corresponding subjects, objects, and/or statements for the
current active date when the current active date is a start
property date, as determined at 432. When the current active date
is a stop property date, the method 400 adds (434) the
corresponding subjects, objects, and/or statements for the current
active date. The method 400 determines (436) and stores the
previous earlier date as the current active date (438). It can be
seen that selection of the PREV button 142 reverses the process
described in relation with selection of the NEXT button 140 and the
sequence of screen images 100b-i of FIGS. 2B-I.
[0048] When the END button 144 is chosen, the method 400 determines
(440) the latest property date and store the latest date as the
current date (442). Method 400 can displays (444) the subjects,
predicates and objects for the statements and hide (446) those
subjects, objects, and statements having stop properties equal to
or less than the determined current date. FIG. 21 illustrates the
resulting screen image 100i when the user 202 chooses the END
button 144 for the exemplary data of Table 2 and Table 2A. In the
embodiment of FIG. 4, the flow chart for method 400 indicates that
after displaying the appropriate screen image (as at 418, 426, 428,
438 and 446) method 400 can return to 412 to await further button
activations by user 202. User 202 can end the display or return to
perform new queries using the file or view manipulation tools, such
as pull down menus 132.
[0049] In addition to displaying time varying information as
described above, the use of start and stop properties for the
statements and resources can be used to filter the statements
returned by APIs 214. In this embodiment, user 202 can specify a
date, or range of dates with the query at 402. APIs 214 can obtain
the start and stop properties (404) and return the graphical
representation data (406) for those statements having a lifetime
that includes the date(s) specified. For example, user 202 can
specify the current date. Based on Table 2 and Table 2A, the
lifetimes of statements 2-7, 3a, 3b, 8a and 8b include the current
date, and those statements will be returned by APIs 214. Thus, it
can be seen that the screen image for the specified date can
include screen image 100i of FIG. 2I.
[0050] For a specified range of dates, the APIs 214 can return
statements having lifetimes that overlap the specified range of
dates. For example, user 202 can specify dates in the range of Jan.
1, 1950 to Jan. 1, 1990. Again using Table 2 and Table 2A, the
lifetimes of statements 1-4, 6, 8, 3a, 3b, 8a and 8b can include
the specified range and it can be seen that the screen image for
the specified range can include screen image 100g of FIG. 2G. While
APIs 214 can typically return statements including the current
date, the current date can be adjusted to provide for date ranges,
without having to re-fetch the data.
[0051] In one embodiment, scroll bar 136 of FIG. 1 can represent a
timeline corresponding to the time from the earliest start property
date of the returned statements to the latest stop property date of
the returned statements. For the exemplary statements of Table 2
and Table 2A, the scroll bar can represent a timeline from the
birth of Joe Thornton (Mar. 16, 1928) to the current date. Slide
146, illustrated in FIGS. 2A-I, can be positioned on scroll bar 136
and can correspond to selecting a date for the screen image to be
presented. Slide 146 can be activated when user 202 chooses one of
the buttons 138-144, as indicated in phantom at 448 in FIG. 4.
Thus, slide 146 can be inactive or hidden in screen image 100 of
FIG. 1. For example, FIG. 2F illustrates slide 146 positioned at
Jan. 1, 1985, thus screen image 100f can include statements having
lifetimes that include the date Jan. 1, 1985.
[0052] The systems and methods described herein may not be limited
to a particular hardware or software configuration. The techniques
described herein can be implemented in hardware or software, or a
combination thereof. The systems and methods can be implemented in
one or more computer programs executing on one or more programmable
computers, such as may be exemplified by processor 208, servers
210, or APIs 214, among others, that include a processor, a storage
medium readable by the processor (including volatile and
non-volatile memory and/or storage elements), one or more input
devices, and one or more output devices.
[0053] The computer programs, or programs, may be preferably
implemented using one or more high level procedural or
object-oriented programming languages to communicate with a
computer system; however, the program(s) can be implemented in
assembly or machine language, if desired. The language can be
compiled or interpreted. The computer program(s) can be preferably
stored on a storage medium or device (e.g., CD-ROM, hard disk, or
magnetic disk) readable by a general or special purpose
programmable computer for configuring and operating the computer
when the storage medium or device is read by the computer to
perform the procedures described herein. The system can also be
considered to be implemented as a computer-readable storage medium,
configured with a computer program, where the storage medium so
configured causes a computer to operate in a specific and
predefined manner.
[0054] As provided herein, the processor(s) can thus be embedded in
one or more devices that can be operated independently or together
in a networked environment, where the network can include, for
example, a Local Area Network (LAN), wide area network (WAN),
and/or can include an intranet and/or the Internet and/or another
network. The network(s) can be wired or wireless or a combination
thereof and can use one or more communications protocols to
facilitate communications between the different processors. The
processors can be configured for distributed processing and can
utilize, in some embodiments, a client-server model as needed.
Accordingly, the methods and systems can utilize multiple
processors and/or processor devices, and the processor instructions
can be divided amongst such single or multiple
processor/devices.
[0055] The device(s) or computer systems that integrate with the
processor(s) can include, for example, a personal computer(s),
workstation (e.g., Sun, HP), personal digital assistant (PDA),
handheld device such as cellular telephone, laptop, handheld, or
another device capable of being integrated with a processor(s) that
can operate as provided herein. Accordingly, the devices provided
herein are not exhaustive and are provided for illustration and not
limitation.
[0056] References to "a microprocessor" and "a processor", or "the
microprocessor" and "the processor," can be understood to include
one or more microprocessors that can communicate in a stand-alone
and/or a distributed environment(s), and can thus can be configured
to communicate via wired or wireless communications with other
processors, where such one or more processor can be configured to
operate on one or more processor-controlled devices that can be
similar or different devices. Furthermore, references to memory,
unless otherwise specified, can include one or more
processor-readable and accessible memory elements and/or components
that can be internal to the processor-controlled device, external
to the processor-controlled device, and can be accessed via a wired
or wireless network using a variety of communications protocols,
and unless otherwise specified, can be arranged to include a
combination of external and internal memory devices, where such
memory can be contiguous and/or partitioned based on the
application. Accordingly, references to a database can be
understood to include one or more memory associations, where such
references can include commercially available database products
(e.g., SQL, Informix, Oracle) and also proprietary databases, and
may also include other structures for associating memory such as
links, queues, graphs, trees, with such structures provided for
illustration and not limitation.
[0057] References to a network, unless provided otherwise, can
include one or more intranets and/or the Internet. References
herein to microprocessor instructions or microprocessor-executable
instructions, in accordance with the above, can be understood to
include programmable hardware.
[0058] While the method and systems have been disclosed in
connection with the preferred embodiments shown and described in
detail, various modifications and improvements thereon will become
readily apparent to those skilled in the art. As an example, those
with ordinary skill in the art will recognize that the arrangement
and connectivity of the components shown in the figures are merely
for illustrative purposes, and can be varied accordingly and
components may be combined or otherwise reconfigured without
departing from the scope of the disclosed systems and methods.
Accordingly, many additional changes in the details and arrangement
of parts, herein described and illustrated, can be made by those
skilled in the art. It will thus be understood that the following
claims are not to be limited to the embodiments disclosed herein,
can include practices otherwise than specifically described, and
are to be interpreted as broadly as allowed under the law.
* * * * *