SimpleGraph: Difference between revisions

From BITPlan Wiki
Jump to navigation Jump to search
Line 3: Line 3:


= Modules =
= Modules =
{{#ask: [[Concept:SimpleGraphModule]]
|mainlabel=SimpleGraphModule
| ?SimpleGraphModule name = name
| ?SimpleGraphModule logo = logo
| ?SimpleGraphModule url = url
| ?SimpleGraphModule documentation = documentation
|sort=SimpleGraphModule name
}}
# {{Link|target=SimpleGraph-Excel}}
# {{Link|target=SimpleGraph-Excel}}
# {{Link|target=SimpleGraph-FileSystem}}
# {{Link|target=SimpleGraph-FileSystem}}
Line 83: Line 92:
   note on link: 6748
   note on link: 6748
</uml>
</uml>


= Installation =
= Installation =

Revision as of 08:09, 16 February 2018

SimpleGraph

SimpleGraph is an open source project that allows to wrap Systems APIs in a way that graph algorithms and storage can be applied. As an implementation Apache Tinkerpop/Gremlin is used.


Modules

SimpleGraphModulenameurldocumentation
SimpleGraph-CalDAVCalDAVhttps://en.wikipedia.org/wiki/CalDAVmakes Calendar data available via ical4j
SimpleGraph-CardDAVCardDAVhttps://en.wikipedia.org/wiki/CardDAVmakes VCard data available
SimpleGraph-ExcelExcelhttps://en.wikipedia.org/wiki/Microsoft Excelmakes Microsoft Excel workbooks accessible via the Apache POI API
SimpleGraph-FileSystemFileSystemhttps://en.wikipedia.org/wiki/File systemmakes your FileSystem accessible via the Java FileSystem API
SimpleGraph-GeoJSONGeoJSONhttps://en.wikipedia.org/wiki/GeoJSONmakes GeoJSON data available
SimpleGraph-githubGitHubhttps://github.commakes GitHub content accessible to Graph processing.
SimpleGraph-HTMLHTMLhttps://en.wikipedia.org/wiki/HTMLmakes HTML files accessible via HTML Cleaner parser
SimpleGraph-JSONJSONhttps://en.wikipedia.org/wiki/JavaScript Object Notationmakes JSON parse results accessible to Graph processing.
SimpleGraph-JavaJavahttps://en.wikipedia.org/wiki/Java (programming language)makes Java code parse results accessible to Graph processing.
SimpleGraph-MailMailhttps://en.wikipedia.org/wiki/MIMEmakes Mail data available via Apache Mime4J
SimpleGraph-MapSystemMapSystemhttps://en.wikipedia.org/wiki/Hash tablesupplies a simple wrapper for a graph with nodes that have key/value pairs in form of HashMaps. We would not really need this since Apache Tinkerpop/Gremlin already supplies us with properties per node/vertex. Still this system is useful as a helper system and to illustrate the wrapping concepts and possibilities of SimpleGraph
SimpleGraph-MediaWikiMediaWikihttps://www.mediawiki.org/wiki/API:Main page MediaWikimakes MediaWiki site content accessible to Graph processing. It exposes the MediaWiki API using the mediawiki-japi Library by BITPlan.
SimpleGraph-PDFPDFhttps://de.wikipedia.org/wiki/Portable Document Formatmakes Portable Document Format (PDF) files accessible via the Apache PDFBox® API
SimpleGraph-PowerPointPowerPointhttps://en.wikipedia.org/wiki/Microsoft PowerPointmakes Microsoft PowerPoint presentations accessible via the Apache POI API
SimpleGraph-SMWSMWhttps://en.wikipedia.org/wiki/SMWmakes Semantic MediaWiki accessible via the SMW API
SimpleGraph-SNMPSNMPhttps://en.wikipedia.org/wiki/Simple Network Management Protocolmakes Simple Network Monitoring Protocol accessible via SNMP4J
SimpleGraph-SQLSQLhttps://en.wikipedia.org/wiki/SQLmakes relational SQL databases accessible via the Java JDBC API.
SimpleGraph-TripleStoreTripleStorehttps://en.wikipedia.org/wiki/Triplestoremakes BITPlan's SiDIF educational TripleStore accessible
SimpleGraph-WikiDataWikiDatahttps://en.wikipedia.org/wiki/Wikidatamakes WikiData data available via the Wikidata-Toolki API
SimpleGraph-WordWordhttps://en.wikipedia.org/wiki/Wordmakes Microsoft Word Documents accessible via the Apache POI API
SimpleGraph-XMLXMLhttps://en.wikipedia.org/wiki/XMLmakes XML dom parse results accessible to Graph processing.
  1. SimpleGraph-Excel
  2. SimpleGraph-FileSystem
  3. SimpleGraph-JSON
  4. SimpleGraph-MapSystem
  5. SimpleGraph-MediaWiki
  6. SimpleGraph-Powerpoint
  7. SimpleGraph-TripleStore
  8. SimpleGraph-SMW
  9. SimpleGraph-SQL
  10. SimpleGraph-WikiData


Motivation

Solving IT Problems across System boundaries can get very difficult. There may be a wealth of APIs which first looks helpful but given the diversity of approaches it a daunting task will need to be tackled to get reasonable results. More often than not projects are not even started since the cost/benefit ratio is not good enough. SimpleGraph aims to supply a unified graph API access to Systems for which this makes sense. In fact for most systems it makes sense to have a graph API. Quite a few problems will get much easier to solve if the subdivision of the problem is done with the goal to apply graph algorithms.


Use Cases

Mix and Match Office and other data

Let's assume we have a business that works in the following manner:

  1. There are pricelist for product categories in Microsoft Excel files
  2. Product specifications are in PDF Format - the files are referenced in the Excel files
  3. Invoices are written in Microsoft Word
  4. There is an address book of customers in VCard format
  5. Orders are handled via e-mail (that is automatically produced by the companies shop website)
  6. Monthly reports are created with PowerPoint

The monthly reports should in the future be modified to give geographical information. Basically a revenue/region sales count per product/region information is wanted.

The 1000 dollar question - can this report be created efficiently semi-manually with reasonable software effort? Sadly it sounds more like 10.000 or 100.000 dollar question.

There are at least 6 different systems involved. SimpleGraph simplifies accessing all 6 systems.

{{SimpleArticle|title=Examples|text=

Air Routes

The AirRoutes example

Installation

SimpleGraph-Installation

Tutorial


In Internet Explorer versions up to 8, things inside the canvas are inaccessible!