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

Adopt funding property if it gets accepted #109

Closed
ashepherd opened this issue Jul 13, 2020 · 17 comments · Fixed by #163
Closed

Adopt funding property if it gets accepted #109

ashepherd opened this issue Jul 13, 2020 · 17 comments · Fixed by #163
Assignees
Labels
Dataset enhancement New feature or request Update Documentation updates to the guidance docs
Milestone

Comments

@ashepherd
Copy link
Member

schemaorg/schemaorg#2618

@ashepherd ashepherd added enhancement New feature or request Update Documentation updates to the guidance docs labels Jul 13, 2020
@smrgeoinfo
Copy link
Contributor

I think the property is 'funding', not 'funded'

@ashepherd ashepherd changed the title Adopt funded property if it gets accepted Adopt funding property if it gets accepted Jul 13, 2020
@smrgeoinfo
Copy link
Contributor

note DINGO "an ontology expressly designed to provide an extensible interoperable framework for formally conceptualizing and expressing the relevant parts of the research/cultural landscape in relation to funding,"

@ashepherd
Copy link
Member Author

Port of #158

PROBLEM: No property from schema:Dataset to describe the funding award (schema:funder describes the Funding Agency).

PROPOSED SOLUTION:

There is a property, schema:fundedItem, on schema:Grant that links to the CreativeWork. Using JSON-LD 1.1 @reverse property, it's possible from a Dataset landing page to use the schema:fundedItem property. See: schemaorg/schemaorg#383 (comment)

Example: https://json-ld.org/playground/#startTab=tab-table&json-ld=%7B%22%40context%22%3A%22http%3A%2F%2Fschema.org%2F%22%2C%22%40type%22%3A%22Dataset%22%2C%22%40id%22%3A%22urn%3Aexample%3Adataset%3A1%22%2C%22%40reverse%22%3A%7B%22fundedItem%22%3A%5B%7B%22%40id%22%3A%22urn%3Aexample%3Aaward%3A123456789%22%2C%22%40type%22%3A%22MonetaryGrant%22%2C%22name%22%3A%22NSF-123456789%22%7D%5D%7D%7D

{
  "@context": "http://schema.org/",
  "@type": "Dataset",
  "@id": "urn:example:dataset:1",
  "@reverse": {
    "fundedItem": [
      {
        "@id": "urn:example:award:123456789",
        "@type": "MonetaryGrant",
        "name": "NSF-123456789"
      }
    ]
  }
}

generates RDF triples:

<urn:example:award:123456789> <http://schema.org/fundedItem> <urn:example:dataset:1> .
<urn:example:award:123456789> <http://schema.org/name> "NSF-123456789" .
<urn:example:award:123456789> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/MonetaryGrant> .
<urn:example:dataset:1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/Dataset> .

@mbjones
Copy link
Collaborator

mbjones commented Apr 28, 2021

Several groups are converging on a shared structure, including CodeMeta (codemeta/codemeta#160), the EML 2.2.0 award element, and the DataCite spec (see example), converged on a common set of fields for these grants. The discussion in CodeMeta has a good summary of the approaches. A few changes I would make, @ashepherd, would be to include the grant number and title, and the funder name and identifier. All of that would be consistent with the CodeMeta proposal, and would look like this:

UPDATED example to fix NSF identifiers

{
  "@context": "http://schema.org/",
  "@type": "Dataset",
  "@id": "urn:example:dataset:1",
  "@reverse": {
    "fundedItem": [
      {
        "@id": "https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024",
        "@type": "MonetaryGrant",
        "identifier": "1546024",
        "name": "Scientia Arctica: A Knowledge Archive for Discovery and Reproducible Science in the Arctic",
        "url": "https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024",
        "funder": {
            "@id": "http://dx.doi.org/10.13039/100000001",
            "@type": "Organization",
            "name": "National Science Foundation",
            "identifier": [ 
              "http://dx.doi.org/10.13039/100000001", 
              "https://ror.org/021nxhr62" 
            ]
        } 
      }
    ]
  }
}

When parsed, this produces the following triples:

<http://dx.doi.org/10.13039/100000001> <http://schema.org/identifier> "http://dx.doi.org/10.13039/100000001" .
<http://dx.doi.org/10.13039/100000001> <http://schema.org/identifier> "https://ror.org/021nxhr62" .
<http://dx.doi.org/10.13039/100000001> <http://schema.org/name> "National Science Foundation" .
<http://dx.doi.org/10.13039/100000001> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/Organization> .
<https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> <http://schema.org/fundedItem> <urn:example:dataset:1> .
<https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> <http://schema.org/funder> <http://dx.doi.org/10.13039/100000001> .
<https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> <http://schema.org/identifier> "1546024" .
<https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> <http://schema.org/name> "Scientia Arctica: A Knowledge Archive for Discovery and Reproducible Science in the Arctic" .
<https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> <http://schema.org/url> <https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> .
<https://www.nsf.gov/awardsearch/showAward?AWD_ID=1546024> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/MonetaryGrant> .
<urn:example:dataset:1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://schema.org/Dataset> .

@elishawc
Copy link

does it make sense to include RORs?
e.g., NSF - https://ror.org/021nxhr62

@smrgeoinfo
Copy link
Contributor

I think that would be a good identifier to use. The DOI in Matt's example is a dummy (doesn't resolve)
steve

@smrgeoinfo
Copy link
Contributor

I must confess that while the @reverse works technically, it seems to me that it will be confusing to many people...
Doesn't look like Google Rich REsults test recognizes the @reverse...
https://search.google.com/test/rich-results?utm_campaign=sdtt&utm_medium=code&id=mMe3UTdWdPLJnHGY4ZcteQ

@mbjones
Copy link
Collaborator

mbjones commented Apr 29, 2021

@elishawc Thanks. The DOI in my example was not meant to be a dummy -- it was from the CrossRef Funder Registry, and I made a typo in my example, which is now fixed. The ID is http://dx.doi.org/10.13039/100000001, which is nice because all of the metadata is already in an RDF graph. That said, I think using a ROR is a good idea too, and I added that to the example above as well. So both are now updated.

@smrgeoinfo I agree it is a bit awkward, but it it is a legit feature of JSON-LD and one that validates well. Is there an alternative, given that the inverse property of fundedItem is not defined in schema.org?

@mbjones
Copy link
Collaborator

mbjones commented Apr 29, 2021

I also noticed that I somehow missed the MonetaryGrant type from @ashepherd 's example and so I added that back in. One issue for me was whether the example is ok using the "identifier" field as literals or whether we should use the structure we provided for other DOI and related identifiers?

@mbjones
Copy link
Collaborator

mbjones commented May 3, 2021

Discussed on the SOSO call from 2021-05-03, agreed that using @reverse on fundedItem will work for the time being, and that if schema.org agrees to an inverse property, we will shift to recommending that. Also, we all agreed it would be good to voice support for funding in schema.org (although possibly better named as fundedBy) in the PR on the issue: schemaorg/schemaorg#2618

TODO: Matt to writeup guidance docs, and ADR, and a PR for everyone to review.

@mbjones
Copy link
Collaborator

mbjones commented May 6, 2021

I edited Funding as we discussed, which is all on the feature_109_funding branch, including the following:

Please comment on the PR or in this issue. Thanks!

@mbjones mbjones self-assigned this May 6, 2021
@elishawc
Copy link

elishawc commented May 6, 2021

I see an award landing page field.
Is there also a DOI field for the award? DOE is starting to issues DOIs for proposals as well.

@mbjones
Copy link
Collaborator

mbjones commented May 6, 2021

@elishawc Our convention for an award DOI would be to add it to the schema:identifier field. There can be multiple identifiers, so if someone has both an award number from an agency and a DOI for that award, they could both be included.

@datadavev
Copy link
Collaborator

datadavev commented May 8, 2021

Using @reverse is logically no different from using @graph, and both serialize to the same n-quads for example. An appropriate action for a consumer interpreting the content as a JSON representation of a Dataset may be to frame the document accordingly, for example in JSON-LD playground. Note the example defines fundedItem as a node identifier since that item is not yet defined in the SO context. (Note also that you need to click on another tab like "Expanded", then back to "Framed" to actually apply the frame.)

(edited to correct url)

@mbjones mbjones linked a pull request May 12, 2021 that will close this issue
@mbjones
Copy link
Collaborator

mbjones commented May 14, 2021

Merged the PR into develop, so funding work is now ready for release.

@mbjones mbjones closed this as completed May 14, 2021
@mbjones
Copy link
Collaborator

mbjones commented Mar 2, 2022

schema.org just added funding to the release. I suggest we switch to it in the guidelines. See schemaorg/schemaorg#2618 (comment)

@mbjones mbjones reopened this Mar 2, 2022
@ashepherd
Copy link
Member Author

schemaorg/schemaorg#3056

@ashepherd ashepherd self-assigned this Mar 7, 2022
@ashepherd ashepherd mentioned this issue May 2, 2022
13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Dataset enhancement New feature or request Update Documentation updates to the guidance docs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants