The entry point may be in a browser, or in some other form that uses HTTP. I imagine this entry point to look like this:
This entry point does not represent the entire enterprise information system, but is merely a portal to it. It is a portal to the underlying data which would exist in a federated global database. There could be many of these portals both viewing data, and performing transformations on it. Indeed, the portal pictured above may not be the only type of portal.
One entry point, perhaps the most user friendly, would be the natural language query. If I searched, for example, for “Car Projects with Brent Shambaugh” I would get a set of documents containing Car Projects and Brent Shambaugh, a document with the term automobile that is semantically related to car, and a document describing what I contributed to (a wheel). I would also get ontology instances, the ontologies that they used, and through following specified linked data links I could get 1st degree linked data. Since some of these triples have common subjects or objects they can form an interconnected graph. The subjects and objects are nodes, while the connections between them are predicates.
This would be possible by searching an ontology index, a document index, and an annotations index linking the ontologies (including triples with instances of them) with the documents. This method came from Miriam Fernandez's Thesis titled, “Semantically enhanced Information Retrieval: an ontology based approach” (http://nets.ii.uam.es/miriam/thesis.pdf). Also a SPARQL query (http://www.w3.org/TR/sparql11-overview/) or linked data browser (http://www.w3.org/wiki/TaskForces/CommunityProjects/LinkingOpenData/SemWebClients) could help find 1st degree linked data (check this).
There may come a point where I wish to search amongst the data that was returned through the natural language query in such a way that I follow the same semantic relations. I could do this by using Enrico Franconi et al.'s method presented in “An intelligent query interface based on ontology navigation ” (http://ceur-ws.org/Vol-565/paper3.pdf). At the beginning the query (excluding natural language equivalents) would involve the parent class Thing, as shown below:
Completing the query with the graph pattern “Car hasPart Reflector” would give: (cover GSS button)
- I need to double check how the underlying query / search would be performed. Perhaps with an ontology instance index as in M. Fernandez's Thesis. To make it P2P, try Yacy with alternating master and slave nodes. Inspired by: (http://www.academia.edu/2821203/P2P-MapReduce_Parallel_data_processing_in_dynamic_Cloud_environments). Or perhaps if the URIs of the data sources are known, a federated sparql query (http://www.w3.org/TR/2010/WD-sparql11-federated-query-20100601/).Alternatively, I may want to perform a SPARQL query..perhaps by using the existing graph as a base, and keeping the subjects and objects as variables. In this case, the query is restricted to data that exists in one rdf graph in one graph store (a database containing rdf graphs).
Completing this query would give: (update ontology instances on right side)
What if I wanted to prune triples from the resulting query? I can illustrate this on the original query “Car Projects with Brent Shambaugh”. If I elimate all triples with predicates rdf:type with fresnel lenses (http://www.w3.org/2005/04/fresnel-info/) I obtain: (eliminate triples from ontology instances and 1st degree linked data)
I can enhance my view by applying color coding triples with graph style sheets
(http://www.w3.org/2001/11/IsaViz/gss/gssmanual.html). Applying, I obtain:
I can also add triples to the graph likely using the web widgets library developed by Hollenbach et al.
(http://dig.csail.mit.edu/2010/rdf-widgets/thesis.pdf ) and maintaining awareness of access control (http://dig.csail.mit.edu/2009/Papers/ISWC/rdf-access-control/paper.pdf).
An alternative way to view query results could be Dov Dori's Object Process Methodology which gives natural language equivalents for triples in the graph:
Notice that if I select the wheel of the car I see the corresponding ontology that it is from in the right hand pane (alternatively, this I might try instances from the ontology that are currently in use):
The previous highlighting is not native to OPM. Adding the git for triples (R&WBase) (http://ceur-ws.org/Vol-996/papers/ldow2013-paper-01.pdf)
view plus a fresnel and GSS gives:
I can also show the case of two different contributors to the same wheel:
I also may want to show the case where an external agent compensates another agent for a contribution to illustrate McCarthy's Resource Event Agent Methodology (https://www.msu.edu/user/mccarth4/McCarthy.pdf) (although I am not sure if it is correct OPM form to put an arrow link between the the paid and contribute processes):
I also may show what seems to be behind this transaction occuring over the ripple network with its metadata being expressed as linked data in the PaySwarm (https://web-payments.org/) form:
I could also show another contribution to the car, such as a motor, using the REA methodology:
Applications are kind of tricky. There needs to be a way to go from whatever things are called in the displayed graph to whatever they are called in the database of the application, say FreeCAD. Part 2 of ISO 15926 provides a reference data library to map to and from a database. Below is a generic form of figure 1.12 on page 34 of “Introduction to ISO15926” (https://www.posccaesar.org/wiki/ISO15926Primer).
But we also need a way to relate things by different names. Perhaps this is where part 2 of ISO 15926 comes in. It is an upper ontology called EXPRESS.
I also may want to attach conversations to particular projects. I might do this using rww.io and cimba.co (https://github.com/deiu/rww.io , https://github.com/linkeddata/cimba ). RWW.io may be used with cimba and data is stored as RDF which I'm guessing could reference to triples in the projects.
What to do for next month? In addition to the doubts above (e.g. parenthesis after colons), editing slides for OPM will need to be completed. Here is starting out using entities, and structural and procedural links from OPM.
VRM slides will also need to be expanded. VRM follows VRM principles (http://cyber.law.harvard.edu/projectvrm/Main_Page).
What is holding me up? To an extent other things, but also how fast I can think.
What motivates me most in this time? The prospect that doing this will open up new ways of doing things that will be affordable (which will hopefully lead to diverse projects in diverse fields).