Schema Dts Versions Save

JSON-LD TypeScript types for Schema.org vocabulary

v1.1.2

1 year ago

Changes in schema-dts

  • Includes the latest schema from Schema.org v15
  • Switch back to include the "all layers" schema (including the "Pending" layer) (this was the case in earlier versions and regressed accidentally in the last few releases)
  • Clearer TypeScript outputs, substituting unnecessary declare type with simply type

Diff from v1.1.0: https://www.diffchecker.com/bB0J9Iie/

Changes in schema-dts-gen

  • Update to the latest TypeScript APIs
  • Switch default ontology from "current" layer to "all" layers
  • Updates to various dependencies

v1.1.0

2 years ago

Small, backwards-compatible improvements to schema-dts and schema-dts-gen

Changes in schema-dts

  • Improved comment quality by properly including unicode and unescaped characters. (thanks to #174)
  • Includes latest Schema.org additions of Healthcare Businesses

Diff from 1.0.0: https://www.diffchecker.com/RtKuuqMG

Changes in schema-dts-gen

  • Uses N3.js to parse N-Triple files instead of a custom regex, this has a number of benefits:
    • --ontology can now be an .nt file or a .tt Turtle file
    • Improved output comment quality by properly including unicode and unescaped characters
    • Can parse string literals of length 0 or 1 (previously the shortest string that could be parsed in input was 2 characters long)
  • Can use rdfs:domain and rdfs:range instead of schema:domainIncludes and schema:rangeIncludes -- See #172
  • Parser does not choke when seeing OWL properties (though it doesn't explicitly support them) - See #172
  • Accept "unnamed" IRIs, such as "https://schema.org" (as opposed to "https://schema.org/Thing"), and handle them properly
  • Less special-handling of meta-schema (isPartOf, meta comments, etc.) -- The converter is more comfortable with entities it doesn't know about

v1.0.0

2 years ago

schema-dts and schema-dts-gen are both now considered stable & mature 🎉

Changes in schema-dts

  • Updates the package file layout for schema-dts.

    This should be a backwards-compatible change if you use the public API surface area (as in, import from "schema-dts" only).

  • v1.0.0 is otherwise identical to v0.11.0. The SemVer-incompatible version bump is done to reflect current maturity of this package.

Changes in schema-dts-gen

  • Breaking: schema-dts-gen is now upgraded to ESM.
    • If importing it directly, you must use ES6 imports, e.g. import {} from "schema-dts-gen";
    • The minimum Node.js supported version is now 14.x.

Infrastructure Changes

In addition to the above changes, v1.0.0 also brings a completely overhauled repository structure to schema-dts.

  • Now using NPM workspaces and adopting a more traditional monorepo structure for both packages
  • Simplifies build dependency between schema-dts-gen and schema-dts
  • Migrate from Travis-CI.org (deprecated) to GitHub Actions.
    • Also start running tests for Node.js 14 and 16 to catch issues.
  • schema-dts is now has its own test suite using // @ts-expect-error and tsc.
  • schema-dts is built from schema-dts-gen by running it as an NPM script, just as we expect downstream clients of schema-dts-gen to do so

v0.11.0

2 years ago

Changes in schema-dts & schema-dts-gen

  • Role, OrganizationRole and others are allowed to be use in place of all properties in Schema.org. See #143 & notes in #164
    • This also corrects the "Role" type to be generic. A Role type (and its sub classes) is contextual in the context of the property it is used in. E.g. Role in an alumniOf will have a nested alumniOf property, for example:

      import { Person, WithContext } from 'schema-dts';
      
      const p: WithContext<Person> = {
        '@context': 'https://schema.org',
        '@type': 'Person',
        name: 'Delia Derbyshire',
        sameAs: 'http://en.wikipedia.org/wiki/Delia_Derbyshire',
        alumniOf: {
          '@type': 'OrganizationRole',
          alumniOf: {
            '@type': 'CollegeOrUniversity',
            name: 'University of Cambridge',
            sameAs: 'http://en.wikipedia.org/wiki/University_of_Cambridge'
          },
          startDate: '1959'
        }
      };
      
    • See http://blog.schema.org/2014/06/introducing-role.html for more details

Diffs vs previous version of schema-dts: https://www.diffchecker.com/Q5wPQvi0

v0.10.0

2 years ago

Changes in schema-dts-gen

  • Breaking Change: Requires TypeScript 4.1.0 and above
  • Emitted Schema now allows number strings for Number, Float, and Integer. (See #163 )

Changes in schema-dts

  • Breaking Change: Requires TypeScript 4.1.0 and above

  • Number, Float, and Integer can now be a numeric string. (See #163)

  • Diff from previous version: https://www.diffchecker.com/nO5AjcQh

v0.9.0

2 years ago

Changes in schema-dts-gen

  • Breaking Change: WithContext<T> can no longer be a Graph. If you use a {"@context": foo, "@graph": []} as a WithContext<T>, import Graph explicitly instead.

Changes in schema-dts

  • Breaking Change: WithContext<T> can no longer be a Graph. If you use a {"@context": foo, "@graph": []} as a WithContext<T>, import Graph explicitly instead.
    • Fixes #158 (see #160)
  • Picks up Schema.org v13
  • Diff from previous version: https://www.diffchecker.com/udGGpUpP

v0.8.3

2 years ago

Changes in schema-dts-gen

  • Adds a --file attribute to generator, allowing the use of custom .nt files on your local machine. See (Issue #145, PR #148)

Changes in schema-dts

v0.8.2

3 years ago

Changes in schema-dts and schema-dts-gen

  • Changes how JSDoc comments are handled and generated. For existing .nt files, you might see some minor differences.
  • Supports purely-markdown RDFa comments, consistent with Schema.org v11.

Changes in schema-dts

v0.8.1

3 years ago

Changes in schema-dts and schema-dts-gen

  • Migrates Base and Leaf types to interfaces, rather than type literals. #138

Changes in schema-dts

v0.8.0

3 years ago

Changes in schema-dts and schema-dts-gen

  • Breaking Change: Enum variables are no longer exported.

    This trims down the entire ~22KB output of the exported .js, which is helpful if tree-shaking isn't enabled in your bundler.

    Instead, you should use the string literals for an enum directly.

    See discussion in #131. PR #137

https://www.diffchecker.com/5DOZQKg3