-
Notifications
You must be signed in to change notification settings - Fork 63
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
Semantic Annotations - Referencing Individuals instead of Classes #2036
Comments
Which would be the right way to describe a switch that can be toggled so a consumer would be able to present it to the user as a toggable switch? |
@AndreaGiulianelli Thank you very much for this information. May I ask you to provide TD examples that use the new SAREF version? This might then be part of the new TD 2.0 REC. |
@sebastiankb @lu-zero In example 2, the status property is annotated with the With the new version of SAREF, as reported in
With this new scenario, it is no more possible to use So this issue is to raise the possible need for approaches that makes possible to relate TD elements to specific semantic terms, independently to whether they are classes or individuals. In fact, at the moment the specification only supports classes natively (via |
Dear all, Note that the correct namespace for SAREF Core is "https://saref.etsi.org/core/" , not "https://w3id.org/saref#" (three occurrences in the TD spec) SAREF Core undergoes a transition to a new major revision 4, where we distinguish more clearly:
In the "OnOff" example above, we may end up having:
If we agree on this modeling, the class to which individuals OnState and OffState belongs (say: "OnOffStateValue") could be used as the value for Properties vs States is currently looked at very carefully, this exact proposal is discussed here: https://labs.etsi.org/rep/saref/saref-core/-/issues/62#note_11156 Best, |
I agree on this particular case, that creating a "OnOffStateValue" is a possible, elegant, and consistent solution. But what about other cases? Could it be useful to have a more generic way to annotate properties/actions/events that consider the possibility when the "semantic tags" are not classes, but also individuals? |
I believe the solution to your problem is to use something else than The td context https://www.w3.org/2022/wot/td/v1.1 refers to different vocabularies that you may look up for such an annotation, including |
Maybe So for example, I imagined a solution where I am able to refer to an existing predicate or individuals like in the previous case with the For the moment, based on your previous advice, I have created an annotation property (with an open range -- so that I can associate classes/individuals/predicates) that I include in the TD via Context Extension. Surely I will take a look at the Dublin Core to understand if they already provide something similar. Thank you very much! |
EXAMPLE 2 shows an example of a TD annotated with the SAREF ontology.
The example uses the JSON-LD
@type
keyword to reference a class (e.g.,saref:OnOffState
,saref:ToggleCommand
).In the new version of SAREF,
saref:OnOffState
(a subclass ofsaref:State
) andsaref:ToggleCommand
(a subclass ofsaref:Command
) will be deprecated, and the recommended way to implement states, properties, and commands will be by creating instances of the base classessaref:State
,saref:Property
, andsaref:Command
(see https://saref.etsi.org/patterns/).EXAMPLE 45 deals with this situation using the external vocaboulary
ssn:forProperty
that links an affordance to a previously defined individual of the classsaref:OnOffState
.Generally, depending on the way the ontology is defined, it should be possible to relate affordances to specific semantic terms, independently to whether they are classes or individuals.
Now the specification only supports classes natively, and resorts to external solutions to reference individuals.
OWL punning allows to reference an individual as a class, but it is considered an antipattern and should be avoided.
The text was updated successfully, but these errors were encountered: