Namespaces

Message
Author
OnnoPaap
Posts: 189
Joined: Sun Jan 22, 2012 9:14 pm

Namespaces

#1 Post by OnnoPaap »

If we refer to an entity data type (e.g. "ClassOfActivity", see )in the FOL of part 8 templates, we have 3 namespace names to choose from:

See the template of this example [ http://15926.org/templatespecs/CL-ACTIV-01.xml ]
It is about the ClassOfActivity behind the first two roles.

Code: Select all

[1] http://rds.posccaesar.org/2008/02/OWL/ISO-15926-2_2003#ClassOfActivity
[2] http://dm.rdlfacade.org/data#ClassOfActivity
[3] http://standards.iso.org/iso/ts/15926/-8/ed-1/tech/reference-data/data-model#ClassOfActivity
Given that we are moving into using the endpoints of JORD.
However namespace names do not have to be resolvable or even be a domain name on the internet. We will have redirect services which will point programs at the proper endpoint once given a namespace.

This is a discussion about referring to entity data types as ISO 15926 classes in the Core RDL rather than classes in the part 2 data model of the namespace dm:

Shall we pick a namespace?

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Namespaces

#2 Post by vvagr »

I'll vote for the use of the 1st namespace, http://rds.posccaesar.org/2008/02/OWL/ISO-15926-2_2003#

However I don't like the distinction between "entity data types as ISO 15926 classes in the Core RDL" and "classes in the part 2 data model". I think that two SameAs relationships have to be added to all entity datatypes in the ontology http://rds.posccaesar.org/2008/02/OWL/ISO-15926-2_2003.

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Namespaces

#3 Post by HansTeijgeler »

In the context of a recent discussion about 15926-in-OWL I presented a document that you can find here: http://15926.org/publications/general-d ... er-set.pdf. In that context there is a relation between the Part 2 entity types and the applicable RDL classes, but it is rdf:type rather than owl:sameAs.

With respect to the namespace my preference goes to something MUCH shorter, more neutral, easier to remember, and less disk space consuming.

What about the following subdomains of 15926.org:
http://www.dm.15926.org# - data model
http://www.rdl.15926.org# - reference data
http://www.tm.15926.org# - template model
http://www.tpl.15926.org# - templates
http://www.meta.15926.org# - meta data
?

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Namespaces

#4 Post by vvagr »

Hans,

I'll review the document and post an answer.

Meanwhile I've to say that we don't need sandbox namespaces for dm: and tm:, we've to use standardized URIs to ease work with our definitions.

We can define new metadata in our sandbox meta: namespace, but we've to use part 8 meta: for those already defined.

vvagr
Posts: 282
Joined: Mon Feb 27, 2012 11:01 pm
Location: Moscow, Russia
Contact:

Re: Namespaces

#5 Post by vvagr »

Hans,

About the document:

First of all, I don't like the use of Powerset term in this context (and in that discussion). It is because of "if and only if" clause. Let's consider PUMP TYPE ClassOfClassOfIndividual. If you call it a powerset of PUMP ClassOfIndividual, then you are implying that _any_ subset of pumps is worth to be called "pump type". Rather strong assumption, no? The same problem you can see at type level, though it is more difficult to make an obviously wrong examples at an abstract level.

I'm suggesting to declare sameAs where you are declaring equivalentClass. But the first and foremost objection is simple - we don't need A and B classes in reference data if we have equivalent data model classes already.

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Namespaces

#6 Post by HansTeijgeler »

Hi Victor,
Meanwhile I've to say that we don't need sandbox namespaces for dm: and tm:, we've to use standardized URIs to ease work with our definitions.
[HT] There are no standardized URIs yet. Any time someone does some work he comes up with yet another URI. We tried to get this done in JORD, but so far without success. That's why I suggested some easy to remember, short URIs as a proposal for standardization.
First of all, I don't like the use of Powerset term in this context (and in that discussion). It is because of "if and only if" clause. Let's consider PUMP TYPE ClassOfClassOfIndividual. If you call it a powerset of PUMP ClassOfIndividual, then you are implying that _any_ subset of pumps is worth to be called "pump type". Rather strong assumption, no? The same problem you can see at type level, though it is more difficult to make an obviously wrong examples at an abstract level.
[HT] I don't know which document you were looking at, but the one I sent does not have PUMP TYPE listed.
I'm suggesting to declare sameAs where you are declaring equivalentClass.
[HT] owl:sameAs is for individuals (the OWL individuals). I quote from W3C:
The built-in OWL property owl:sameAs links an individual to an individual. Such an owl:sameAs statement indicates that two URI references actually refer to the same thing: the individuals have the same "identity".
The ability to express equivalences using owl:sameAs can be used to state that seemingly different individuals are actually the same. Real class equality or property equality can only be expressed with the owl:sameAs construct. As this requires treating classes and properties as individuals, such axioms are only allowed in OWL Full.
For equivalentClass I quote from W3C:
owl:equivalentClass is a built-in property that links a class description to another class description. The meaning of such a class axiom is that the two class descriptions involved have the same class extension (i.e., both class extensions contain exactly the same set of individuals).
But there are OWLgeeks that have another opinion.
But the first and foremost objection is simple - we don't need A and B classes in reference data if we have equivalent data model classes already.
[HT] The OWLgeeks that work on 15926-in-OWL are not in agreement with you. They think in terms of power sets (I am not that clever). They consider the Part 2 entity types as a kind of meta classes. As such I can live with that.
Do you remember the discussion we recently had about complex entity types? You can only build those in reference data, and in order to do that you have to create a union of two reference classes that are members of those power sets (alias Part 2 entity types).

Regards,
Hans

OnnoPaap
Posts: 189
Joined: Sun Jan 22, 2012 9:14 pm

Re: Namespaces

#7 Post by OnnoPaap »

powersets.png
powersets.png (102.82 KiB) Viewed 15298 times
Let's focus on this diagram for a moment.

There is a class called possible_individual in the ISO 15926-2 namespace, and there is a class called individual in the ISO 15926-4 namespace.
An entity data type "individual" does not exist, so it must be a class name.

In the Core RDL there exists a class called ISO 15926-4 POSSIBLE INDIVIDUAL and a class called POSSIBLE INDIVIDUAL (click them)
I think one of these would fit to be the "Individual" class of the diagram.

This would be the split-up between de "dm" and "rdl" namespaces, correct?

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Namespaces

#8 Post by HansTeijgeler »

Yes, that is correct. See Part 8. That has the split I mentioned, be it with a very long namespace that nobody can ever memorize.
See also http://www.infowebml.ws/descr/templates ... e-case.htm for an overview, and http://www.infowebml.ws/owl/index.htm where I listed the cleaned-up Part 8 files plus some extras.

OnnoPaap
Posts: 189
Joined: Sun Jan 22, 2012 9:14 pm

Re: Namespaces

#9 Post by OnnoPaap »

So now that we know the split of classes, we can apply this to the Core RDL.

Leaves us with the lengthy namespace names.

Part 8 states namespaces formed like:

dm:

Code: Select all

http://standards.iso.org/iso/ts/15926/-8/ed-1/tech/reference-data/data-model#


Hans suggests:
dm:

Code: Select all

http://dm.15926.org#
(leaving out the subdomain www which is redundant here)

The long namespace is taken as ISO 15926-4 is defining namespaces. It will cater for
  • namespaces per 15926 part
  • per release type
  • per edition
It suggests that we can have new versions of the same class (or reference individual) which is needed if the global ID is a short English name.

HansTeijgeler
Posts: 283
Joined: Sun Jan 22, 2012 10:02 pm

Re: Namespaces

#10 Post by HansTeijgeler »

This only adds to the confusion.

A namespace per 15926 part is fine, but the data model was defined in Part 2 and not in Part 8.
So when an item is defined (again) in Part x we use the URI of that Part x, and when in Part y we use the URI of Part y?

In Part 8 the split in ontologies has been defined, which is fine. But the Part 8 URI had to be used for ISO reasons.
Most stuff we have and still will add has not been defined in Part 8. We already have three or four URIs for the data model, and by far most RDL items have not been defined in Part 4. If you keep using that URI for that version of Part 8 for all new items it would be misleading.

So let's grab the bull by the horns and come with a compact URI set with a format that does take care of versioning.
Very long URIs like http://standards.iso.org/iso/ts/15926/- ... data-model# simply take too much storage space, because they are present three times in every triple.

Post Reply