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
In-text semantic annotation of links #2144
Comments
Hi @felixhayashi seems like a reasonable idea. |
If I'm not mistaken, SMW link are reversed from TW's :
"alternate text" is equivalent to our "Displayed Link Title" So I think the right syntax for us should be rather (in order to keep ascendant compatibility):
not a big deal I think ;-) I'm just mentioning |
good point! should be |
While that is true, I don't quite think I would overload the wikitext syntax either way. I'd rather try and find an appropriate spot to extend on it, something like:
|
Why does a semantic annotation need I think |
What would you refer to with SMW? Other than that, using link-syntax in your proposed way breaks backwards compatibility and disallows titles involving double-colons. I suggested object notation because it cannot be anticipated what properties maybe used to qualify a relation / link. TMap may use an entirely different set of qualifiers (and different allowed values for each) than some other plugin making use of any semantically enhanced relations. For example:
How would you possibly just be using "parent of"? Why (artficially) constrain the expressivity of such a relation ...to being mere "identifiers"? ...or even just one? Would you support:
? What If I actually need a key-value pair for each property? Once we are stuck with identifiers, there's hardly a way to enhance that for key-value pairs. So why start off with limiting modeling paradigms? |
hmmm, IMO not core but may be plugin! I think, there should be only one place to add properties to links. So using the The properties and the prop-content should be part of a tiddler. IMO "the tiddler is the thing" We have several other problems to solve here: eg: property names ... eg: number format: -> What if this number changes? ... I don't want to change every tiddler, that may contain this info. ... "the tiddler is the thing" So if we want Meta data, we should do it right.
Nice idea, but I doubt, that TiddlyMap can make sense of a string like this: 3.396.990 without the information, how to use it. So we need some schema definitions. see: http://semanticweb.org/wiki/Semantic_Web_standards.html ... I like the idea, that I could export an appointment setting from a TW to a Calendar app in VCalendar or any other format. |
In this construct: [[pretty|title]{tmap-key:tmap-val}] ...tmap would very well "know" how to use it, because it would have been created based on the very instructions that tmap provides in how to handle / define / create such wikitext. |
I'm not sure I see much of a relation between tiddlers in a TiddlyWiki and something like RDF... but maybe that's short sighted on my end. I also don't think that for every turn we make we need to pick and chose and then implement some third party standard... unless someone clearly communicated very specific benefits of why and how to use any of those. |
SMW meant Semantic MediaWiki, which is a project to give MediaWiki semantic wiki abilities.
This is independent of TiddlyMap. Semantic wikis allow the user to define the meaning of links. So you have a subject (the article that holds the link) a predicate ("parent of") written along with the link and an object (the link target). You don't need If e.g. TMap parses the text it will construct the following edge: "TiddlerA - parent of - TiddlerB"
Usually one property is enough. But I agree that there are (rare) cases in which it may make sense to describe a link with multiple properties.
I am not sure if we are talking about the same thing and maybe it is my fault because I wrote in the intro "This would bring us one step closer to a semantic wiki" (I deleted this phrase in the OP). I am only talking about annotating links/relationships to other tiddlers (as the issue title states). You are right, semantic wikis go a step further and also annotate data, "331313 = number of citizens in X" but this is not what I aim at. I just propose to allow users to state in their links what the link is about, that's all. I don't think this is plugin territory. Giving a user the chance to state the "type" of a link is pretty common, a very simple addition and would enable many plugins that operate on links and relationships to understand what the link is about. At first I also thought this is only of value for TiddlyMap but @ybabel and @tobibeer pointed out in felixhayashi/TW5-TiddlyMap#119 that it makes sense to have this in the core. Also @Jermolene wrote he is interested in adding a link qualifier (felixhayashi/TW5-TiddlyMap#119 (comment)). He mentioned that this link qualifiers may be used to influence navigation actions. |
@tobibeer – SMW is quite popular and their syntax looks quite good, but I agree that it would break links for Tiddler titles containing
So I would not be against the above notation (although I am not sure if we should allow multiple qualitfies, but it may make sense, hard to tell…). |
I'm not sure either but I can easily imagine two plugins having differing, if not conflicting needs... hence the idea of being quite explicit in a key-value sense. Not actually sure how to best design relations like that. In a TiddlyWiki sense, possibly the cleanest design would be to indeed just have a simple qualifier that actually exists as a tiddler ...giving details as to its nature and then showing any link-relations built on it, thus a query-interface to fetch qualified links. |
Allowing a user to add a qualifier to give a link meaning doesn't need keys and any plugin should just use the information available. However, it is true that some plugins might distinguish their qualifiers. But then they should tell the user to use a prefix as part of the qualifier itself. So, as said before, if a plugin really requires the user to distinguish the qualifier, then the plugin could tell the user "prefix all links that are meant for me with An example: In a Tiddler called
Now the user can install a bunch of plugins that understand and use this relationship
Well, this is plugin territory now. My proposal is just to add a qualifier. Then the next step, what to do with a qualifier, how to make sense out of it and how to create lists of links with the same qualifier, this is what plugins should do, and actually, this is what TiddlyMap does. Moreover, just like adding a tag doesn't force the user to create a tiddler of that title, a qualifier should not need to correspond to an actual tiddler. In summary, I support @tobibeer's suggestion made in felixhayashi/TW5-TiddlyMap#119: Fictive example:
|
|
@felixhayashi, I think I'll concede that key-value specificity will possibly be overkill and possibly only complicate things by one degree too many. And yes, so long as the delimiters are clear, any plugin can always work with whichever suffixes or perhaps even separators it can handle. |
I think we can always allow for an exception... and if truly ever needed perhaps also have an escape character, e.g. two pipes so as to say "this is supposed to be a pipe". Here's one for key-value pairs:
But sure, there may be plugins that know how to handle colons to formulate key value pairs. |
Sorry for digging up such an old issue, but is something like this available by now? |
I think the possibilities to implement a similar behaviour as discussed in the OP would be available once TW v5.3.0 will be available. So once we do have parametrized transclusions as described at: https://talk.tiddlywiki.org/t/parameterised-transclusion-introduction/4925 But I think a lot of water will go down a river, since we may get v5.2.4 in November and 5.3.0 will probably add several more months. |
Thanks @m42e it's actually often interesting to revisit these old threads. I do still support the idea of attaching name/value pairs to links. These values would then be included in the I have done a fair amount of work on investigating a more flexible navigation architecture in my work on https:// which I hope to bring into the core in due course. So, I think the implementation of the requested feature is relatively straightforward apart from the question of the syntax. One option that would be consistent with existing syntax would be to retrospectively declare that the
|
@Jermolene Thanks a lot for all the efforts. I would definitly like the syntax to be equal to the one used for |
Motivation:
How others do it
Semantic MediaWiki uses the following notation
See https://www.semantic-mediawiki.org/wiki/Help:In-text_annotation
What needs to be done:
$tw.wiki.getTiddlerLinks
or create a new functionRelated
People previously involved
@tobibeer @Jermolene @ybabel
The text was updated successfully, but these errors were encountered: