-
Notifications
You must be signed in to change notification settings - Fork 18
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
use IRIs uniformly in HETS #1596
Comments
What happens with fully qualified names |
The problem is that in the standard http://www.ietf.org/rfc/rfc3987.txt brackets Possible solution: use, when displaying the OMS (i.e. for "show theory"): Another question is whether all CASL SIGNs should be legal in full DOL IRIs. Probably it would be better to allow them only in unprefixed identifiers. |
For mapping CASL IDs to IRIs, if there is no empty prefix, we need a default. This could be the IRI of the library and should be consistent with Ontohub. However, in Ontohub, we need to disambiguate between OMS, mappings, symbols, axiom names etc. (see ontohub/ontohub-backend#9 (comment)). We could append a the entity kind
but there also would be the default loc/id
Note that this mechanism is different from the usual DOL prefixing mechanism. For example, if we had
a symbol
which does not follow the DOL/Hets convention that a loc/id should include both the library, the OMS and the entity name. The general form of a loc-id therefore is
and in Ontohub, this specialises to
Alternatively, we could use the usual web convention to prefix each name with a kind:
Note that we also have to process native OWL, RDFa documents etc. The symbols there have IRIs that do not follow the above mechanism. But these symbols do not follow link data principles anyway. We provide alternative IRIs (loc/ids) for these symbols in the above form, which follow linked data principles. |
Another question is whether we use the IRI of the location of the document or the IRI in the |
Since the problem of incomplete character sets seems to occur with several people, we might try |
I encountered another Problem, perhaps only with Protégé (?): if we use the following names |
yes, I can confirm this. The problem is the comma. Only ˌ seems to work. So for example F〚XˌY〛works for me. |
Yes, F〚XˌY〛works for me also. |
Some thoughts while I'm reading this. I have bit yet read the comments to the end. @BerndKB BTW good to "see" you here. I was also at ISWC (just the main conference); didn't manage to talk to you there, but I heard some of my colleagues did. Another alternative character for enclosing type arguments might be |
The discussion about prepending the entity kind to IRIs reminds me of another possible solution: following the approach of punning in OWL 2, i.e. allowing the use of the same name for different entities having different entity kinds, where the kind of an entity is determined from the syntactic context. |
In any case I would not mess with the mechanism of "prefix expansion by concatenation", which DOL reuses from the specification of CURIEs in RDFa, and which occurs similarly in related standards, including SPARQL and Turtle. The beauty of this mechanism is its simplicity. Or, on the contrary, if we wanted to deviate from this mechanism, we should be bold instead of half-hearted and do away with it completely, i.e. devise a powerful mechanism for abbreviating long identifiers that doesn't have to respect the restrictions of any existing standard (except maybe RFC 3987). As an analogy, compare the URI syntax of MMT, which, IIRC, has its own approach to relative paths, which is not supported by any other implementation but is self-contained and makes a lot of sense for the MMT use cases. |
On whether or not to follow linked data principles, one can also take inspiration from MMT's approach of deliberately not following them. Not following them might of course cause confusion because DOL intends to be compatible with languages whose best practice is to follow them, and DOL should also be inviting to the users of such languages. |
Done with my comments. No straightforward solution I could offer, but I hope you'll find my input useful at least. |
many thanks for your comments. Do you have the impression that we mess with the mechanism of "prefix expansion by concatenation"? |
We currently have IRIs defined in OWL2, in Common.IRI and moreover we have CASL identifiers. This complicates things, e.g. when translating from OWL to CASL or when using Common.IRIs for OWL2. Ideally, there should be just one type of identifiers, that we could create by extending Common.IRI with some mixfix annotations to cover CASL identifiers as well. We should also have a convention, documented in the wiki, about implicit values for fields in the IRI type. As a result, all logics (including CASL and OWL2) should use the new Common.IRI type.
Hets modules to look at:
Common.IRI
(datatypeIRI
),OWL2.AS
(datatypeQName
, same asIRI
, but different fromIRI
inCommon.IRI
),Common.Id
(datatypeId
). These need to be integrated into a uniform datatype. Later on, look at the parsers:Common.IRI
,OWL2.Parse
,Common.Token
(e.g.parseId
).The text was updated successfully, but these errors were encountered: