In the last post I described the overall model that I came up with and the thought that went into arriving at the final picture.
Once of the main dilemmas was whether to use ISO 11179 and Edition 2 of the standard that most people seem to have used or to move to the new Edition 3 published in 2013.
In the end I went with ISO 11179 and Edition 3. As I said previously the standard comes in six parts with ‘Part 3: Registry metamodel and basic attributes’ being the important part. The notes below all relate to Part 3 and the 2013 edition.
Part Three is divided into several sections each relating to a logical area of the ISO 11179 model so I used the approach of having one schema file per section. I have tried to use the same class names as they appear in the specification and the same property names (removing underscores and employing camel case). I have to say you may find that the implementation naive but as these were the first semantic web work I have undertaken and the first resulting .ttl files I hope you will forgive any stupidity.
One thing I learnt quickly is that I prefer the turtle (.ttl) format as I find the format easier to read.
I have placed the files detailed within this post on GitHub in a repository called Alba. Why Alba? I wanted a neutral name and I thought, given where I would like to get to, that there may be several ‘releases’ where it might be wise to keep those releases separate. To keep the separation I envisage creating a second, third, fourth etc. repository so I thought I would use a word beginning with A then B, C etc. Couldn’t think of anything better than ski resort names so the first repository name is Alba.
So go to GitHub here if you want to look at the files. I have published these under the GNU General Public License Version 3.
It was difficult to get to grips with ISO 11179. The specifications are not the easiest read and so searching the web (what did we do before the web?) for useful articles and other materials was an obvious avenue of attack. So a few useful links from the notes I made during the work:
I found the following semantic implementations of ISO 11179:
- SALUS Project – A full ISO 11179 Edition 2 implementation
- NCIt caDSR – A simple ISO 11179 Edition 2 implementation
- The current NCI thesaurus files – The RDF/OWL download comes with the meta-model-schema and ct-schema files that contain a slice of ISO 11179 Edition 2.
Note these are all Edition 2 implementations.
I also found one very useful paper:
Also, of course, the ISO 11179 specification. You will find these on the ISO site:
- ISO SC 32 (Working Group 2 for ISO 11179) has links to each of the parts
- ISO/IEC 11179-3:2013 Information technology — Metadata registries (MDR) — Part 3: Registry metamodel and basic attributes.
- SC 32 Working Group 2 page. This is useful as it contains links to drafts, previous versions etc that are free. A google search may also be fruitful!
Note that you have to pay for the ISO specifications. I will pass no comment!
Each of the files in GitHub is listed here
The ISO11179Types.ttl file declares the basic types defined in section 5.5 of the specification. Note the green ticks on the image (and those below). These are the elements of the model I have implemented.
The ISO111979Basic.ttl file only implements the Organisation class defined within section 6.3 of the specification.
The ISO11179Identification.ttl file implements the Identification parts of the model. This part provides the version management for a registered item and the publishing organisation.
The ISO11179Registration.ttl file implements those parts needed to register metadata items including the AdministredItem class.
The ISO11179Concepts.ttl file implements the Concept_System class that allows for more complex metadata structures to be maintained. Will use this construct a lot in building the higher level content. (No green ticks, I think most of it went in!)
The ISO11179Data.ttl files details the Conceptual & Value part of the model.