Skip to content
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

Add .any() and .each() and .anyValue() #10

Open
timbl opened this issue Dec 4, 2018 · 1 comment
Open

Add .any() and .each() and .anyValue() #10

timbl opened this issue Dec 4, 2018 · 1 comment

Comments

@timbl
Copy link

timbl commented Dec 4, 2018

These functions in rdflib are the way I have done the bulk of the data to day working with RDF data.

Tim Berners-Lee @timbl 10:34
You don’t have each() and any() ???
This is supposed to be the thing which corresponds to the thing rdflyib.js used to call IndexedFormula and now calls Store?

@timbl scrolls back to "@timbl the idea is, like in the representation task force, to find a minimal interface we all agree on. additional custom methods can be added by datafactories, like rdflib. that's why there is no .any() or .each()."

Sorry I want every RDFJS implementation to be able to support my code. Having different implementations implement different methods is called lack of interop.

You can have two-level spec where the minimal interface is really the only methods whcih cannot be implemented in terms of other methods, and then the second level with the convenience functions is implemented everywhere and the spec people depend on.

My worry is that I have seen a lt of new developers writing everything in terms of match() and just concluding that RDF is a pain, when if they had used any() and each() then it would have been a simpler and more natural experience.

Discussed at https://gitter.im/rdfjs/public?at=5c069e8e43c68b3727fba1b9

@ktk
Copy link
Contributor

ktk commented Dec 4, 2018

Related to #8 and #4 .

We should keep the mandatory functions simple, dataset is still a low-level spec. Your functions would be in the "optional" group according to #4 IMHO.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants