Skip to content
Thomas Bergwinkl edited this page Mar 20, 2016 · 1 revision

Present

@pieroit @bergos @elf-pavlik @dmitrizagidulin

Content

Stream Interfaces

https://github.com/rdfjs/representation-task-force/pull/55

  • methods names for source and sink: .read, .write, .consume, .filter?
    • Piero thought about passing triples to Sink.write (maybe .write method confusing?)
  • .pipe is not available with the simple interface, but it should be easy to extend simple streams to full features stream
  • Dmitri sees need for some smiple examples, especially for proposed streams inteface

Named Node vs. IRI

https://github.com/rdfjs/representation-task-force/issues/50 https://github.com/rdfjs/representation-task-force/wiki/NamedNode

NamedNode (instead of IRI)

Pros

  • Matches BlankNode notation
  • Avoids cognitive overloading of the term -- IRI is an existing standard, with its own spec etc
  • NamedNode contains an IRI
  • existing specs and libraries: RDF-Interfaces, RDFLib.js, RDF-Ext
  • somehow similar naming - owl:NamedIndividual
  • if cases exist where a node has one or more IRIs and a value naming it IRI doesn't make sense - aka. smusing (merging) nodes
  • if daft changes to use .iri instad of .value IRI.iri looks awkward

Cons

  • Previous vote decided to go with IRI, so this would be a change/reversal
  • Potentially less clear to developers new to RDF (IRI is a known/understandable concept, NamedNode potentially less so. However, this goes for BlankNode as well, and other RDF concepts)
  • IRI is shorter
  • ruby and python use URI/IRI terminology

Other options

  • Python uses URIRef instead of named node or URI. Possibly an alternative option, IRIRef? (talk to Tim, etc)

Term property names

Pros

  • why factory properties have diferent names

Cons

  • Previous vote went with .value
  • easier to explain to developers
  • still possible to use .iri with an alias
  • use cases:
    • debugger watchlist shows function calls delayed -> use .value for all cases
    • display stuff
    • compare already filtered nodes with a known, but dynamic type

Smushing / Merging Nodes

Example: https://github.com/RDFLib/rdflib/blob/master/examples/smushing.py

  • Bergos: propose that this is implemented as a separate class, MergedNode

Other

Actions

  • add streams examples: bergos
  • discuss methods name in PR: bergos
  • discuss .graph method (.read(null, null, null, graphIri)) in PR: elf-pavlik (mention destructive assigment with object)
  • ask on the mailing list for feedback on the stream interfaces PR: bergos
  • make separate page for Term property names elf-pavlik
  • create PR to make Triple an alias of Quad