{"id":453,"date":"2015-09-20T18:41:14","date_gmt":"2015-09-20T23:41:14","guid":{"rendered":"http:\/\/managemetadata.com\/blog\/?p=453"},"modified":"2015-09-20T18:42:01","modified_gmt":"2015-09-20T23:42:01","slug":"semantic-versioning-and-vocabularies","status":"publish","type":"post","link":"https:\/\/managemetadata.com\/blog\/2015\/09\/20\/semantic-versioning-and-vocabularies\/","title":{"rendered":"Semantic Versioning and Vocabularies"},"content":{"rendered":"<p>A decade ago, when the Open Metadata Registry (OMR) was just being developed as the NSDL Registry, the vocabulary world was a very different place than it is today. At that point we were tightly focussed on SKOS (not fully cooked at that point, but Jon was on the WG that was developing it, so we felt pretty secure diving in). <\/p>\n<p>But we were thinking about versioning in the Open World of RDF even then. The NSDL Registry kept careful track of all changes to a vocabulary (who, what, when) and the only way to get data in was through the user interface. We ran an early experiment in making versions based on dynamic, <a href=\"http:\/\/blog.metadataregistry.org\/2008\/03\/26\/timeslices-and-versions\/\">timestamp-based snapshots<\/a> (we called them \u2018time slices\u2019, Git calls them \u2018commit snapshots\u2019) available for value vocabularies, but this failed to gain any traction. This seemed to be partly because, well, it was a decade ago for one, and while it attempted to solve an Open World problem with versioned URIs, it created a new set of problems for Closed World experimenters. Ultimately, we left the versions issue to sit and stew for a bit (6 years!). <\/p>\n<p>All that started to change in 2008 as we started working with RDA, and needed to move past value vocabularies into properties and classes, and beyond that into issues around uploading data into the OMR. Lately, Git and GitHub have started taking off and provide a way for us to make some important jumps in functionality that have culminated in the OMR\/GitHub-based <a href=\"http:\/\/rdaregistry.info\">RDA Registry<\/a>. Sounds easy and intuitive now, but it sure wasn\u2019t at the time, and what most people don\u2019t know is that the OMR is still where RDA\/RDF data originates &#8212; it wasn\u2019t supplanted by Git\/Github, but is chugging along in the background. The OMR\u2019s RDF CMS is still visible and usable by all, but folks managing larger vocabularies now have more options.<\/p>\n<p>One important aspect of the use of Git and GitHub was the ability to rethink versioning. <\/p>\n<p>Just about a year ago our paper on this topic (<a href=\"https:\/\/ecommons.cornell.edu\/handle\/1813\/40559\">Versioning Vocabularies in a Linked Data World<\/a>, by Diane Hillmann, Gordon Dunsire and Jon Phipps) was presented to the IFLA Satellite meeting in Paris. We used as our model the way software on our various devices and systems is updated&#8211;more and more these changes happen without much (if any) interaction with us. <\/p>\n<p>In the world of vocabularies defining the properties and values in linked data, most updating is still very manual (if done at all), and the important information about what has changed and when is often hidden behind web pages or downloadable files that provide no machine-understandable connections identifying changes. And just solving the change management issue does little to solve the inevitable \u2018vocabulary rot\u2019 that can make published \u2018linked data\u2019 less and less meaningful, accurate, and useful over time.<\/p>\n<p>Building stable change management practices is a very critical missing piece of the linked data publishing puzzle. The problem will grow exponentially as language versions and inter-vocabulary mappings start to show up as well &#8212; and it won\u2019t be too long before that happens. <\/p>\n<p>Please take a look at the <a href=\"https:\/\/ecommons.cornell.edu\/handle\/1813\/40559\">paper<\/a> and join in the conversation!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A decade ago, when the Open Metadata Registry (OMR) was just being developed as the NSDL Registry, the vocabulary world was a very different place than it is today. At that point we were tightly focussed on SKOS (not fully cooked at that point, but Jon was on the WG that was developing it, so [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7,25,24],"tags":[],"class_list":["post-453","post","type-post","status-publish","format-standard","hentry","category-rda","category-tools","category-vocabularies"],"_links":{"self":[{"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/posts\/453","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/comments?post=453"}],"version-history":[{"count":3,"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/posts\/453\/revisions"}],"predecessor-version":[{"id":456,"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/posts\/453\/revisions\/456"}],"wp:attachment":[{"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/media?parent=453"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/categories?post=453"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/managemetadata.com\/blog\/wp-json\/wp\/v2\/tags?post=453"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}