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

Standardize relationship between concept-objects and interface-objects #10

Open
inexorabletash opened this issue May 18, 2015 · 3 comments
Labels
Milestone

Comments

@inexorabletash
Copy link
Member

The relationship between e.g. cursor and IDBCursor is not described consistently. Modern specs (e.g. fetch) formally define the relationship as a script-object IDBCursor having an associated concept-object. This spec just says things like cursor implements IDBCursor, and method definitions implicitly have a "this cursor..." in scope.

The most extreme case of this is detailed in #3 (where object store and IDBObjectStore don't have a 1:1 mapping).

@inexorabletash inexorabletash added this to the V2 milestone Aug 1, 2016
@inexorabletash inexorabletash modified the milestones: V3, V2 Jan 14, 2017
@inexorabletash
Copy link
Member Author

I'm going to drop this from "v2" since the current state of the spec is definitely not worse than "v1" and also not demonstrably worse than many of the specs out there.

inexorabletash added a commit that referenced this issue Sep 30, 2019
Use WebIDL's "this" and "this's" instead of "the cursor", "this range's", etc.

This addresses the bulk of the spec changes needed for issue #10

Also tossed in a few "then"s in "if" sentences, and made some |var| usage more consistent.

No normative behavior changes.
@inexorabletash
Copy link
Member Author

Consistent linking text, that should be reviewed/revised:

  • "The IDBDatabase interface represents a connection to a database."
  • "The IDBObjectStore interface represents an object store handle."
  • "The IDBIndex interface represents an index handle."
  • "The IDBKeyRange interface represents a key range."

Less consistent links, that should be reviewed/revised:

  • "Cursor objects implement the IDBCursor interface. There is only ever one IDBCursor instance representing a given cursor. "
  • "A cursor that has its key only flag set to false implements the IDBCursorWithValue interface as well."
  • "transaction objects implement the following interface:"
  • "Methods on IDBDatabase that return a open request use an extended interface..."

Missing explicit links:

  • request and IDBRequest

@inexorabletash
Copy link
Member Author

DOM uses this "known as" pattern:

An Event object is simply named an event.
Document nodes are simply known as documents.
Objects implementing the AbstractRange interface are known as ranges.

... and then goes on to define properties on the concept objects.

inexorabletash added a commit that referenced this issue Feb 1, 2021
Use WebIDL's "this" and "this's" instead of "the cursor", "this range's", etc.

This addresses the bulk of the spec changes needed for issue #10

Also tossed in a few "then"s in "if" sentences, and made some |var| usage more consistent.

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

No branches or pull requests

1 participant