Graph Style Sheets

Last updated

GSS (Graph Style Sheets) in mathematics and computing, is an RDF (Resource Description Framework) vocabulary for representation of data in a model of labeled directed graph. [1] Using it will make a relatively complex data resource modeled in RDF, much easier to understand by declaring simple styling and visibility instructions to be applied on selected resources, literals and properties. [2]

Contents

Introduction

GSS (Graph Style Sheets) are proposed in order to visually transform the graphs: filtering information, providing alternative layouts for specific elements, and using all available visual variables to encode information, so as to visualise data in a way that better lends itself to human perception. In summary, GSS (Graph Style Sheets) have been designed for the purpose of filtering, grouping and styling of information elements through specification of declarative transformation rules. [1]

GSS not only associate styles to node-edge representation of RDF models, but also can be used to hide part of the graph and offer alternative layouts for some intended elements. [3] The language lets you change the shape (including bitmap icons) of nodes in the graph, change font attributes or stroke properties, and group some or all properties associated with a resource in a table and sort them. a relatively complex RDF model easier to understand by declaring simple styling and visibility instructions to be applied to selected resources and properties. [2]

The GSS Language

GSS is a stylesheet language for styling data modeled in RDF and features a cascading mechanism. Its transformation model is loosely based on that of XSLT and its instructions resemble some existing W3C Recommendations such as CSS and SVG. In particular most of the GSS properties accept all values defined by the CSS 2 and SVG 1.0 Recommendations. [2]

Any transformation rule of GSS is made of a selector-instruction pair. The left-hand side of a rule is called selector and the right-hand side is called the instruction. Such sets of rules are collected in a stylesheet (or several cascading stylesheets) and the application (a GSS engine) responsible for styling RDF model, evaluates relevant rules on data model (resources, literals and properties) while walking it; that is, if the selector of a rule matches a node (or edge) in the data model, its set of styling instructions are applied to that node (or edge). Conflicts between rules matching the same node (or edge) are resolved by giving different priority to rules in the stylesheets and most specific selector if conflicting rules are in the same stylesheet. [2]

Tools for manipulating GSS

IsaViz 2.0 is equipped with a GSS Editor, which lets you create stylesheets without writing a single line of RDF.

Related Research Articles

<span class="mw-page-title-main">Semantic Web</span> Extension of the Web to facilitate data exchange

The Semantic Web, sometimes known as Web 3.0, is an extension of the World Wide Web through standards set by the World Wide Web Consortium (W3C). The goal of the Semantic Web is to make Internet data machine-readable.

The Resource Description Framework (RDF) is a World Wide Web Consortium (W3C) standard originally designed as a data model for metadata. It has come to be used as a general method for description and exchange of graph data. RDF provides a variety of syntax notations and data serialization formats, with Turtle currently being the most widely used notation.

DOT is a graph description language, developed as a part of the Graphviz project. DOT graphs are typically stored as files with the .gv or .dot filename extension — .gv is preferred, to avoid confusion with the .dot extension used by versions of Microsoft Word before 2007. dot is also the name of the main program to process DOT files in the Graphviz package.

JavaScript Style Sheets (JSSS) was a stylesheet language technology proposed by Netscape Communications in 1996 to provide facilities for defining the presentation of webpages. It was an alternative to the Cascading Style Sheets (CSS) technology.

A style sheet language, or style language, is a computer language that expresses the presentation of structured documents. One attractive feature of structured documents is that the content can be reused in many contexts and presented in various ways. Different style sheets can be attached to the logical structure to produce different presentations.

RDF Schema (Resource Description Framework Schema, variously abbreviated as RDFS, RDF(S), RDF-S, or RDF/S) is a set of classes with certain properties using the RDF extensible knowledge representation data model, providing basic elements for the description of ontologies. It uses various forms of RDF vocabularies, intended to structure RDF resources. RDF and RDFS can be saved in a triplestore, then one can extract some knowledge from them using a query language, like SPARQL.

GraphML is an XML-based file format for graphs. The GraphML file format results from the joint effort of the graph drawing community to define a common format for exchanging graph structure data. It uses an XML-based syntax and supports the entire range of possible graph structure constellations including directed, undirected, mixed graphs, hypergraphs, and application-specific attributes.

The identity transform is a data transformation that copies the source data into the destination data without change.

<span class="mw-page-title-main">Hyperbolic tree</span> Mathematical tree in the hyperbolic plane

A hyperbolic tree is an information visualization and graph drawing method inspired by hyperbolic geometry.

<span class="mw-page-title-main">Blank node</span>

In RDF, a blank node is a node in an RDF graph representing a resource for which a URI or literal is not given. The resource represented by a blank node is also called an anonymous resource. According to the RDF standard a blank node can only be used as subject or object of an RDF triple.

<span class="mw-page-title-main">Sass (style sheet language)</span> Stylesheet language

Sass is a preprocessor scripting language that is interpreted or compiled into Cascading Style Sheets (CSS). SassScript is the scripting language itself.

A link relation is a descriptive attribute attached to a hyperlink in order to define the type of the link, or the relationship between the source and destination resources. The attribute can be used by automated systems, or can be presented to a user in a different way.

<span class="mw-page-title-main">CSS</span> Style sheet language

Cascading Style Sheets (CSS) is a style sheet language used for describing the presentation of a document written in a markup language such as HTML or XML. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript.

A graph database (GDB) is a database that uses graph structures for semantic queries with nodes, edges, and properties to represent and store data. A key concept of the system is the graph. The graph relates the data items in the store to a collection of nodes and edges, the edges representing the relationships between the nodes. The relationships allow data in the store to be linked together directly and, in many cases, retrieved with one operation. Graph databases hold the relationships between data as a priority. Querying relationships is fast because they are perpetually stored in the database. Relationships can be intuitively visualized using graph databases, making them useful for heavily inter-connected data.

A processing instruction (PI) is an SGML and XML node type, which may occur anywhere in a document, intended to carry instructions to the application.

<span class="mw-page-title-main">GraphStream</span>

GraphStream is a graph handling Java library that focuses on the dynamics aspects of graphs. Its main focus is on the modeling of dynamic interaction networks of various sizes.

D3.js is a JavaScript library for producing dynamic, interactive data visualizations in web browsers. It makes use of Scalable Vector Graphics (SVG), HTML5, and Cascading Style Sheets (CSS) standards. It is the successor to the earlier Protovis framework. Its development was noted in 2011, as version 2.0.0 was released in August 2011. With the release of version 4.0.0 in June 2016, D3 was changed from a single library into a collection of smaller, modular libraries that can be used independently.

Cypher is a declarative graph query language that allows for expressive and efficient data querying in a property graph.

Shapes Constraint Language (SHACL) is a World Wide Web Consortium (W3C) standard language for describing Resource Description Framework (RDF) graphs. SHACL has been designed to enhance the semantic and technical interoperability layers of ontologies expressed as RDF graphs.

GQL is a proposed standard graph query language. In September 2019 a proposal for a project to create a new standard graph query language was approved by a vote of national standards bodies which are members of ISO/IEC Joint Technical Committee 1(ISO/IEC JTC 1). JTC 1 is responsible for international Information Technology standards. GQL is intended to be a declarative database query language, like SQL.

References

  1. 1 2 Pietriga, Emmanuel (4 September 2006). "Semantic web data visualization with graph style sheets". Proceedings of the 2006 ACM symposium on Software visualization - Soft Vis '06 (PDF). ACM. pp. 177–178. doi:10.1145/1148493.1148532. ISBN   978-1595934642. S2CID   16115362 via dl.acm.org.
  2. 1 2 3 4 Pietriga, Emmanuel. "Styling RDF Graphs with GSS". www.xml.com.
  3. "IsaViz/GSS User Manual - Graph Stylesheets". www.w3.org.