ISO meeting in Leipzig
Since nearly all the key people in the ISO committee were going to be in Leipzig anyway for TMRA 2006 it was decided to have an ISO meeting in conjunction with the conference. The meeting started the Friday after the conference, and continued for three days, finishing on Sunday.
At other meetings I've made a semi-live report, updated as the meeting progresses, but in this case I was much too tired (after the conference) and also too actively involved to actually do this. So this "report" is mostly written after the meeting. Note that this report has no official standing; this is just my subjective view of what happened.
The first subject we dived into was CTM, the Compact Syntax for Topic Maps. Gabriel Hopmans presented a set of detail issues with the current draft, but quickly got side-tracked by people who were unhappy with the basic shape of the syntax. In general, people felt that the whole thing had gotten too big and complicated, and that while the draft had looked good initially, there were many devils hiding in the detail. The discussion got quite heated, and there was much marching in circles and general unhappiness and wretchedness. Much of the unhappiness centered on the templates. In the end, we dropped the subject, leaving the editors to try and salvage something from the mess.
In the evening Graham and I put together an alternative proposal that basically takes the %name and so on directives out of the syntax. The rationale for this was that this was what seemed to be the problem, and that people have been using LTM for 5 years without really seeming to feel that the absence of templates was a problem.
Below is an example of using this proposed syntax.
ontopia isa company = "Ontopia A/S" homepage http://www.ontopia.net @(en) ~ontopiahomepage . works-for(lmg : employee, ontopia : employer) lmg isa person = "Lars Marius Garshol" = given-name "Lars Marius" = last-name "Garshol" homepage http://www.garshol.priv.no blog http://www.garshol.priv.no/blog/ .
There are no templates here, but otherwise this is pretty close to the existing CTM proposal. A key point here is that the "=" character tells us that we are looking at a name, while the omission of it means that we have an occurrence type. There are predefined keywords for attaching identifying URIs. The syntax is carefully constructed in such a way that no delimiters are needed between the properties of the topics (this is why there is a parenthesis around the scoping topics).
Below is some simplistic EBNF for the syntax.
topicmap ::= (topic | association)* topic ::= topicref assignment+ '.' assignment ::= identifier | name | occurrence identifier ::= ('slo' | 'sid' | 'iid') uri name ::= '=' type? string scope? reifier? variant* occurrence ::= type value scope? reifier? scope ::= '@' '(' topicref+ ')' association ::= topicref '(' role (',' role)* ') scope? reifier? role ::= topicref ':' topicref type ::= topicref topicref ::= id | qname
This was given to the editors, who promised to look at it, but what happens next is up to the editors. They may well decide to take a very different route.
Dublin Core discussion
The last part of Friday was taken up with discussion of the creation of a standard ontology for expressing Dublin Core metadata in Topic Maps. There was general agreement that creating a Topic Maps ontology for this shouldn't be very difficult, and that probably this was all that's necessary. Sam Oh and Steve Pepper were appointed as editors of this document, and they will produce a draft showing how this can be done.
There is also something called the Dublin Core Abstract Model, which is indepedent of the vocabulary (which contains things like "title", "creator" etc). It might be that what we really need to do is to create a mapping from this to Topic Maps, in which case the amount of work we need to do probably increases. However, it was agreed that in first instance we will not attempt this.
The main purpose of this work is to
- help people who want to express Dublin Core metadata in Topic Maps by showing them how to do it,
- help ensure that Dublin Core metadata created by different people in Topic Maps is expressed in an interoperable way,
- promote Topic Maps as one of many ways to express Dublin Core metadata, and
- show people that Topic Maps can be used to represent metadata.
The main item under discussion here was the mapping from TMDM to TMRM, which yours truly is responsible for creating. A small part of the Saturday was devoted to this, and ome of the open issues with the mapping were discussed and settled.
One issue was how to handle datatypes (which are strings in TMDM with URI identifying the type, and real typed values in TMRM). It was agreed that the mapping should set out some requirements on what a datatype was made up of, and that this should be used in the mapping. We would also make sure to stay in line with the RDF mappings for the XML Schema datatypes, since this is an almost identical issue.
The largest part of the discussion centered on what is now called "ontological commitments". For example, the current TMQL draft assumes that all topics will be instances of tm:subject, since this is the semantics implied by TMDM. However, real topic maps hardly ever contain these associations, and so the mapping should insert them. The main issue was how one should be able to distinguish data actually present in the source topic map from inferred data added by the mapping. The solution adopted at the meeting was that inferred data would live in a separate topic map, and that when querying one could choose to query the two topic maps merged or just the source topic map.
On Saturday there was also quite a bit of discussion on TMQL where a lot of minor syntax issues were settled. The discussion was mainly on a detail level, since the language is now really beginning to solidify, so I won't attempt to reproduce it here.
On Sunday morning we spent a couple of hours on TMCL, answering the main issues left open. The editors had felt held up by a lack of progress on CTM, but given the resolution of the CTM issues on Saturday, they felt they were now ready to move forward.
The biggest issue that was discussed was how TMCL constraints should be represented in Topic Maps (that is, TMDM). The editors proposed what could be described as an object mapping, where every constraint is a topic (even, say, the is-disjoint-with relationship between two types). This met considerable resistance, but the editors' wish to have a consistent representation where every constraint is a topic was eventually accepted.
Most of Sunday was spent on GTM, and here it turned out that there was considerable disagreement on what the requirements were. One of the editors was mainly interested in a graphical language for representation of TMCL constraints, while the other was mainly interested in representing TMDM instance data. That TMCL constraints will be represented as TMDM instance data just served to muddy the waters even further.
As a result, most of the time was spent on actually straightening out the requirements, and getting agreement on them. This took much effort, but eventually a set of slides was produced that captured the consensus at the meeting. These slides will be turned into a requirements document that will be circulated for review.
Inge Henriksen, of Bouvet, also presented his GTM proposal. This turned out to be a constraint proposal rather than an instance proposal, and was evaluated by the committee as input for the constraint part of GTM.
Web Services Interface
Graham Moore presented a proposal for ISO to take on a standard web service interface to Topic Maps servers as a new work item. After some discussion of this on the Sunday it was decided to start this work outside of ISO. One reason was that this would allow the developers to move faster, and another was that it would allow the developers to make temporary ad-hoc decisions that might not be compatible with the full ISO stack of standards in the long run. This would be acceptable for a short-term de facto standard, which in the longer run would be replaced by a better ISO standard.
It was also felt that the developers probably would not get this interface right at the first attempt, and that doing this outside of ISO would allow them to gather experience with creating and using such interfaces before they were officially standardized.
The second ISO meeting of 2007 was held over three days in Montréal, Canada, in conjunction with the Extreme Markup conference
Read | 2007-08-07 16:58
The last day of the Seoul meeting also had the closing plenary in the morning, with lots of excitement around who would vote what regarding the OpenXML submission from ECMA and Microsoft
Read | 2006-06-02 04:21
Jinie Min - 2006-10-20 05:59:32
I miss the ISO meeting, especially SC34. Your blog helps me following it, Thank you, Lars. *^^* Maybe you already heard some news about me. YES, I moved to the other team, perfectly the other job in company, and will not have works and people of the stanrard(ization) , No more. I am sorry about this, but it's life as I know.
I heard devoted works of you and others in this Leipzig meeting, from Sam. (^_^) Amazing works...
Thanks for your broadcasting. ^^
Arnoud Haak - 2006-10-20 12:45:57
Found your blog while surfing during my break. Nice to see how topic maps are evolving. Nice report. ;)
rho - 2006-10-21 01:26:25
Ad CTM larsbot writes:
...that people have been using LTM for 5 years without really seeming to feel that the absence of templates was a problem.
Probably the peasant living in the 13th century Russia never missed his iPod, either. :-)
OTOH, prominent ISO members invent even more syntax for synchronizing CSV files with TM stores.
Ceterum constato templati utiliare sunt. If done properly.