-
Notifications
You must be signed in to change notification settings - Fork 1
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
Provide direct associations between fno:Function | fno:Execution and fno:Implementation #12
Comments
how would you know that ?age is the output parameter, and not ?persoon? You could guess it from the SPARQL query, but the idea of the mapping is to make all those kinds of links explicit so a machine can automatically work with that |
The objective behind my suggestion is to treat the function more like a black box, while still providing an implementation. I do realize that this would only work with a specific type of implementations. Namely, those which can operate on the input without an explicit mapping (e.g. SPARQL queries). And which return a single result value. |
So basically, providing a shortcut for below _:myFunction a fno:Function .
_:myImplementation a fno:Implementation .
_:b1 fno:function _:myFunction ; #rdfs reasoning will classify this as a fno:Mapping, but that's a detail in this context
fno:implementation _:myImplementation . with a quite loose relation _:myFunction a fno:Function .
_:myImplementation a fno:Implementation .
_:myFunction fno:hasAssociatedImplementation _:myImplementation .
I could live with that :D |
That's definitely an option. Another would be to link |
Ah yes, my bad, I meant providing a shortcut for below _:myExecution fno:uses _:myMapping .
_:myMapping fno:implementation _:myImplementation . with a quite loose relation _:myExecution fno:hasAssociatedImplementation _:myImplementation .
|
I continued thinking about this. Consider the following example: _:person a ex:Person ;
adms:identifier _:id .
_:id a adms:Identifier ;
ex:identifier "90110845865" ;
ex:validationFunction _:validationFunction .
_:validationFunction a fno:Function ;
fno:expects (_:parameter) ;
fno:returns (_:output) .
_:parameter a fno:Parameter ;
fno:type xsd:string .
_:output a fno:Output ;
fno:type xsd:boolean .
# URI could point to https://github.com/NationalBankBelgium/stark/blob/b9cb07d7998a3e0616cd20dea4bd692b6b2ee9be/packages/stark-core/src/validation/validators/is-nin/is-nin.validator.fn.ts.
_:functionImplementation a fnoi:JavaScriptFunction . What I thought I wanted is a loose association between For example: _:validationFunction a fno:Function ;
fno:expects (_:parameter) ;
fno:returns (_:output) ;
fno:implementation _:functionImplementation .
_:functionImplementation a fnoi:JavaScriptFunction ;
fno:function _:validationFunction . I would recommend to keep the same properties ( Passing a datapoint together with a reference to its validation function could be quite nice and the function ontology seems cut out for this. |
Thank you for this open source work.
In the current model, the use of
fno:Mapping
is compulsory to tie afno:Execution
to afno:Implementation
.However, some implementations may not require any mapping.
Example:
In this case, I would like to bypass the mapping and link
_:ageFromDateOfBirthExecution
directly with_:ageFromDateOfBirthImplementation
.What are your thoughts?
The text was updated successfully, but these errors were encountered: