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 more export formats (e.g. as offered but obsolete at schema.rdfs.org) #208

Closed
4 tasks
danbri opened this issue Dec 28, 2014 · 14 comments
Closed
4 tasks
Assignees
Labels
site tools + python code Infrastructural issues around schema.org site. Most can ignore this!

Comments

@danbri
Copy link
Contributor

danbri commented Dec 28, 2014

schema.rdfs.org offers JSON and CSV views of schema.org. However it is un-maintained. We are now reasonably well set up to do more of this kind of thing within schema.org itself than when both sites were first launched.

@danbri danbri added enhancement site tools + python code Infrastructural issues around schema.org site. Most can ignore this! labels Dec 28, 2014
@danbri
Copy link
Contributor Author

danbri commented Dec 28, 2014

Here's a quick look at reproducing the CSV export for types. You can run it in localhost:8000/console in appengine.

    # CSV for types:
    # id,label,comment,ancestors,supertypes,subtypes,properties
    # ComedyClub,Comedy Club,,Thing Organization LocalBusiness EntertainmentBusiness,EntertainmentBusiness,,

    import pprint
    from api import *

    t = 'CreativeWork'

    di = Unit.GetUnit("domainIncludes")
    ri = Unit.GetUnit("rangeIncludes")

    def GetLabel(term):
        for triple in term.arcsOut:
                if (triple.arc.id == 'rdfs:label'):
                    return triple.text
    def PropsForType(term):
            for prop in sorted(GetSources(di, term), key=lambda u: u.id):
                pprint.pprint("Property: %s" % prop.id )

    term = Unit.GetUnit(t)
    term_desc = GetComment(term)
    p_subtypes = GetImmediateSubtypes(term)
    p_supertypes = GetImmediateSupertypes(term)

    subs =  ( "Direct subtypes of %s: %s" % ( term.id, ', '.join([str(x.id) for x in p_subtypes]) ) )
    sups =  ( "Direct supertypes of %s: %s" % ( term.id, ', '.join([str(x.id) for x in p_supertypes]) ) )

    pprint.pprint("Term: %s Label: %s Desc: %s Subs: %s Supers: %s Properties: %s" % (term.id, GetLabel(term), term_desc, subs, sups, PropsForType(term) )  )

@danbri
Copy link
Contributor Author

danbri commented Dec 28, 2014

(see https://github.com/rvguha/schemaorg/wiki/AppEngine re appengine console)

@sesuncedu
Copy link
Contributor

What about mapping to/from OWL? Now I have a microdata->RDF parser working, I can get back to hacking on this.
I'm not sure if it's better to use anonymous union classes where there are multiple domain and range statements given, or whether defining a named equivalent class is nicer (that has the advantage of possibly catching some missing abstractions when the hierarchy is classified ).

I'm feeling lazy enough to not bother trying to be clever about properties that are data and object valued, and just box incoming literal values.

@0xgeert
Copy link

0xgeert commented Dec 11, 2015

@danbri is this still on the agenda? Specifically looking for an up-to-date json-LD representation including attribute-types

@danbri
Copy link
Contributor Author

danbri commented May 15, 2016

Yup, this still matters...

@3sv
Copy link

3sv commented Aug 26, 2016

There is a json-ld representation at the root of schema.org that is served by content negotiation (accept header application/ld+json - explained in the wiki here: https://github.com/schemaorg/schemaorg/wiki/JsonLd)

@danbri Are there plans to allow partial requests in json-ld to schema.org, ie getting https://schema.org/Person in json-ld format?

@RichardWallis
Copy link
Contributor

@3sv checkout the export formats section on meta-issue (#3) to see what's on the pending list.

I'm hoping to get on to many of these soon.

@morseltech
Copy link

@RichardWallis when you say 'export format' do you mean 'alternative representations'? I can't see the point of having https://schema.org/Person in json-ld format if the URL is not https://schema.org/Person. Each representation should use content negotiation via the HTTP Accept header right?

@BigBlueHat
Copy link
Contributor

@morseltech see the content of #1351. Specifically:

Introduced content negotiation on per-term pages for the following accept types, mapping to the associated file extension types:...

Happy to see this happening, fwiw! 😁

@morseltech
Copy link

Awesome. When are these changes expected to be release on the site?

@danbri
Copy link
Contributor Author

danbri commented Dec 6, 2016

We're overdue for a release, I hope to finalize a release candidate this week, and to get it published this year.

@morseltech
Copy link

Fantastic news. This provides huge benefits, not least of which is people that as scared of RDF don't need to see the underlying RDF and also that each term reference becomes an example for modelling in json-ld. Good job schema.org team. Yay!

@pmackay
Copy link

pmackay commented Feb 21, 2017

May I ask, when might a CSV download be available?

@danbri
Copy link
Contributor Author

danbri commented Feb 21, 2017

Early access to CSV and related improvements: http://webschemas.org/docs/developers.html

This will be on the schema.org site in the next release.

@danbri danbri closed this as completed Jul 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
site tools + python code Infrastructural issues around schema.org site. Most can ignore this!
Projects
None yet
Development

No branches or pull requests

8 participants