Skip to content

Data Structures and Concepts

Tim Standen edited this page Mar 13, 2024 · 2 revisions

Introduction

Data in PASS is a little different than data in most other applications. While most applications focus on getting you your data quickly, or allowing you to analyze it in a variety of different ways, PASS focuses instead on making your data interoperable. That means you are able to share data you put in PASS with a wide variety of programs, and the programs would be able to easily read and understand it. Our goal is not to keep your data in a table, but allow you to link it anywhere in the world.

Because of this focus, PASS spends less time thinking about SQL tables and joins (although they may come up from time to time), and more time thinking about the best Ontologies, in simplest terms, machine-readable data tags that tell computer programs how they should interpret the data. Using ontologies and other tools, we are able to make our boring, siloed data into stronger linked data.

Data Technologies and Concepts

Linked data and ontologies are strongly related to Graph Theory.

RDF

RDF is a framework for modeling relational data (i.e. graphs). It seeks to describe the relationship between different things using triples. A triple is composed of a subject, object, and predicate. The subject and object are data points, things that exist in the world, and the predicate describes how they relate to each other.

For example, a document describing an RDF graph could look like this: person:sanji rel:likes person:nami. That says, in english, "there exists a person, Sanji, who likes another person, Nami." Note, these are one-way relationships. This statement says nothing about Nami's feelings for Sanji. To do that, we would need to add another statement: person:nami rel:apathetic_towards person:sanji.

RDF Graphs are PASS's primary data structures.

TTL

RDF is a logical framework. It doesn't prescribe any specific way to write the RDF graphs. Just like you can represent a Javascript object in JSON, BSON, in-memory binary, or anything else, you can represent RDF graphs in a variety of formats. In PASS, we primarily use .ttl files to represent and serialize RDF graphs.

OWL

OWL is a language that allows you to draw logical conclusions about RDF data found on the World Wide Web. Although we don't (currently) use OWL in PASS, it's a powerful feature of the data model.

Main Ontologies

This is a list of the main ontologies PASS uses in its data. As the scope of PASS changes, so should this list.

  • schema.org: a widely-used ontology good for SEI
  • HMIS Interop: an ontology dedicated to HMIS data
  • US Common Core: A set of ontologies designed by the US Army for use in government services. Designed to be easily extensible.
  • FOAF: An ontology designed for social networking

PASS Document Structures

Personal Profile

TODO

Documents

TODO

Contacts

TODO

Clone this wiki locally