1,020 Matching Annotations
  1. Aug 2022
    1. Systems can now have inputs and outputs. This opens up a variety of interesting behaviors, such as system error handling:

      Hmm, I'd thought an in-style to ECS solution would be to have errors as entities and error handling as a system.

      But perhaps then we wouldn't have static analysis helping us by validating that all errors are being handled.

    2. It made sense to break up these concepts. In Bevy 0.4, Query filters are separate from Query components. The query above looks like this:

      That's sick! It's always good to see things being becomplected. Looks similar to Datomic's rules and pull pattern (rules being the second query expression here in Bevy, and pull pattern being the first.

    1. in order

      How would order be guaranteed if events can come to both streams at any time? E.g., At time1 Stream1 [] Stream2 [2]

      It gets processed, outputting 2

      And at time2 Stream1 [1] Stream2 []

      And 1 is being outputed, resulting in [2 1] downstream.

      It's nitpicking the terminology, but perhaps 'order' is not the right term, maybe 'precedence'?

    2. Slice

      Would be interesting to have a version with predicates. Idx-based slicing seems useful in a limited amount of cases.

    3. Skip

      Why not 'drop'?

    4. rx/from-atom

      Why not rx/from?

  2. Jul 2022
    1. (rx/subs #(rx/push! output-sb %))

      Won't this keep potoks alive forever? If so, it seems an app's potok pool would ever-grow, eventually dragging performance to a halt.

    2. fn

      Why is it not defined in the let, as the others?

    3. output-sb

      Why pass it as a prop and not get it from the scope?

    4. (rx/filter (fn [e] (not ^boolean (.has ^js failset e))))

      Why this filter does not appear in sync state transformation loop?

    5. swap! state*

      If subs are run async, then swap!s may execute out-of-order, do they?

    6. It also can be interpreted like a reducer.

      Would it be better to have [state event] signature in order to comply with reduce function?

    1. It controls the default parameters used by mke2fs(8) when it is creating ext2, ext3, or ext4 file systems.

      .

    1. These requirements are satisfiable throughthe use of a cryptographic primitive called homomorphic hashing.

      Sounds interesting! I wonder if it puts approach of accumulative hashing of sets to use.

    2. However, the main drawback to directly signing thedatabase in this manner is that for each update published, the distributor must iterate over theentire database to produce the signature.

      Persistent data structures attend this drawback by representing database as a tree and only re-hashing part of that tree that changed. E.g., how it's done in Clojure. (and some other languages I fail to recall that borrowed it)

      As it mentioned in Approach 3 via merkle ttries.

    3. To illustrate the wastefulness of this approach, consider the case in which the first row of thedatabase holds an integer counter, and each update simply increments this integer by 1. If there arem such updates, then the batch update and offline database validation operations could involvem signature validations, even though the complete sequence of transformations trivially updates asingle row of the database.

      Re-validating the whole database seems to be of no use, since validation is being performed already before an update is inserted into db.

      I can see how having to validate every update can be wasteful if what's wanted is the final value, then the most efficient way seems to be to have that value signed and validated, as would be the case in Approach 2. But having signed updates may be desirable for some cases (e.g., for collaborative editing, as shown useful in pijul), perhaps a composed solution can be used to get the pros of the two approaches.

    1. The inclusion of a name and email address can be spoofed in a way that a key signature cannot.

      Authorship can be spoofed, a solution is to sign.

  3. Jun 2022
    1. theme

      Excalidraw allows to disable UI theme toggle.

    2. This prop controls Excalidraw's theme. When supplied, the value takes precedence over intialData.appState.theme, the theme will be fully controlled by the host app, and users won't be able to toggle it from within the app. You can use THEME to specify the theme.

      Excalidraw can be supplied with 'theme' argument.

    3. Excalidraw is using CSS variables to style certain components.

      Excalidraw allows to style with CSS.

    1. если физическое лицо не является налоговым резидентом ни одного государства, в том числе Республики Беларусь, то оно признается налоговым резидентом Республики Беларусь, если в календарном году, за который определяется налоговое резидентство, имеет гражданство Республики Беларусь или разрешение на постоянное проживание в Республике Беларусь (вид на жительство)

      Belarus sets "default tax residency" for its citizens and people allowed to stay.

    1. Одним из ключевых понятий налогового законодательства является понятие — МЕСТО ОСУЩЕСТВЛЕНИЯ ДЕЯТЕЛЬНОСТИ. По месту осуществления деятельности определятся законодательство какой станы применяется. Например, у Вас ИП Грузии, но нет наёмных лиц и вся деятельности ведётся на территории РБ через интернет. Место осуществления деятельности — РБ и в РБ надо регистрировать ИП и платить налоги.

      Countries may want to tax you when you work on their territory.

    1. "source": "http://example.org/page1", "selector": "http://example.org/paraselector1"

      Why to have both "source" and "selector" when "source" can be a URI of a selector?

  4. May 2022
    1. Each browser performs MIME sniffing differently and under different circumstances.

      An app better not rely on it.

    1. and common chunks across files can be reused in order to minimize storage costs.

      Content on IPFS can share common parts.

    1. Click 3 dots and go to Plugins, then Marketplace

      Did not appear to me on the latest (atm) logseq dev build.

    1. Currently, Logseq plugin can only run in developer mode. Under this mode, plugin has ability to access notes data. So if you're working with sensitive data, you'd better confirm the plugin is from trusted resource before installing it.

      .

  5. Apr 2022
    1. While it is possible using only the constructions described above to create Annotations that reference parts of resources by using IRIs with a fragment component, there are many situations when this is not sufficient. For example, even a simple circular region of an image, or a diagonal line across it, are not possible. Selecting an arbitrary span of text in an HTML page, perhaps the simplest annotation concept, is also not supported by fragments.

      Fragments are not expressive enough to address an arbitrary structure.

    2. Annotations have 1 or more Targets.

      Web Annotation allow for multiple Web Annotation Targets.

    1. Zotero instantly creates references and bibliographies for any text editor, and directly inside Word, LibreOffice, and Google Docs.

      Zotero has integrations with editors.

    2. Cite in style.

      Zoterro allows to cite.

    3. Collect with a click.

      Zoterro can take and store a snapshot of a document.

    1. The plugin might be related to user data security.

      .

    2. The other day, somebody told me that some of others use children and order (abbr: order-solution for convenience) rather than parent_id and left_id(abbr: left-solution for convenience) to process the relation of blocks, and I might think about it. (PS: Datascript can only save look-refs as set rather than vector.)

      .

    3. We should move all the string and byte calculations out of the outliner logic in the first step. So we had moved the logic of serialization and deserialization of a block into plugins. Doing this brings another significant benefit: we can easily implement multiple persistent storages such as markdown files, org-mode files, AsciiDoc files, or SQLite, etc., by just writing different serialize & deserialize adaptors.

      .

    4. The complexity and no boundaries pulled the developer's legs. To my surprise, I found that supporting Markdown & org-mode might already be our limit that Logseq can support.

      .

    1. React components render for the first time. Event handlers are registered.

      Shouldn't event handlers for about-to-get-rendered React components be registered prior to their render?

    2. Most of Logseq's application state is divided into two parts. Document-related state (all your pages, blocks, and contents) is stored in DataScript. UI-related state (such as the current editing block) is kept in Clojure's atom.

      Why not stick to DataScript altogether?

    3. handler

      Why not handlers?

    4. /src/test contains all the test

      Why is it /src/test and not /test ?

      Not that it matters much, but I had an impression that that's the convention.

    5. /src/electron and /src/main/electron contains code specific to the desktop app.

      That comment would be cool to have as a metadata on those folders.

    6. counterparts

      What's meant by that?

    7. With the advent of web assembly, you can use almost any language to write browser apps.

      How does that work?

  6. Mar 2022
    1. This is because the editors are not powerful web browsers.

      Web browsers are a mess * design-wise (html, css, js, webworkers - all known to me leaves hoping for a better world) * performance wise (can't compete with a game engine) * cross-browser interoperability-wise (especially in small details, good luck getting it pixel perfect)

      E.g., Tonsky's rants and his work on having a better desktop program execution environment.

    2. Many of the Clojure editors that we have today are still basically text buffers. Very little innovation occurs around visualising code inside the editors.

      Should there be? The only responsibility of a text editor is to allow to manage text. They do it best, there are many editor's up to user's taste. There is LSP that eases navigation around the text field. Editors should stay editors. I'd love so much to have one editor to edit text everywhere in my OS, be it in this comment box, somewhere else in a browser or while redacting text files.

      A viz tool can be a stand-alone thing, doing it's own responsibility.

    3. as a medium for code serialization.

      As an alternative, a graph model + labels could be serialized.

    4. Text is a weak basis for understanding and thinking about code. Instead the semantics of the language must be the primary basis.

      An example of that is that some people love ligatures as they make it easier to reason about code, presenting semantical symbols in stead of a sequences of chars.

    1. Following Meyer and McRobbie [57], the use of square brackets to represent anmset has become almost standard.

      Square brackets notation is used to denote a multiset.

    1. they are used in membrane computing

      multisets are used in membrane computing

    1. In order to represent any sequence all we need to do is use a multiset system containing the multiset of elements up to a point in the sequence for each point in the sequence.

      A way to model sequences via multisets.

  7. lisp-ai.blogspot.com lisp-ai.blogspot.com
    1. Sets can be defined as a particular type of multisets whose values are all equal to one

      Sets can be modeled via multisets.

    1. files are serialized from graph objects in git so it may be possible to directly map this tools graph into the git representation

      Git objects are: - blob - tree - commit

      As mentioned here.

      A blob is a file's content, in case of a Clojure program such content is text from a .clj or .edn or some other file.

      From that, we'd still need to perform derivation of a text representation out of a graph model of a program, it seems.

    1. [?cq :codeq/code ?cs]

      What does it capture?

    2. Thus, one way to understand codeq is as an extension of the git model and tree down to a finer granularity, aligned to program semantics.

      I wonder how granular does it go.

    1. Again, I will stress the point that, while this use case is rare

      Perhaps, to some degree, due to inability of having it in the first place with non-ECS systems?

    2. To put it simply, nodes are just interfaces to the actual data being processed inside servers, while in ECS the actual entities are what gets processed by the systems.

      It may be useful to have nodes as an optional interface as some may find it more easy. It is not core to processing, as pointed, I'd like to have my hands on the core - data+logic.

    3. taking the complexity away from the user

      Complexity is not taken away this way, it's hidden, It's still there, but behind a more 'easy' interface perhaps.

    4. In other words, Godot as an engine tries to take the burden of processing away from the user, and instead places the focus on deciding what to do in case of an event.

      'event' is an easy interface.

      However, it adds complexity.

      The need to describe/"decide" is still there.

      "event" captures data needed for a decision. "event handler" decides.

      We can't escape the need of data+logic.

      What I like in ECS is how data and logic is separated and how it results in a generic processing system.

      Whereas with events it's.. yet another system to process data.

    5. Godot uses plenty of data-oriented optimizations for physics, rendering, audio, etc. They are, however, separate systems and completely isolated.

      Why should they be? Why is it not the one system to crunch data?

    6. Godot just has nodes, and a scene is simply a bunch of nodes forming a tree, which are saved in a file.

      And ECS just has Entities.

      Also, Systems can be Entities as well, however we'd need a piece of logic to bootstrap.

      And Entities are IDs, we don't need that either. Or, if we do, content-based id can be used.

    1. A predicate is a para-operator with Boolean values, and at least one argument but no Boolean argument.

      I would call function "boolean?(value)" a predicate. However, the scope to which "value" is bound contains values of "true" and "false". Would this function, then, fail to classify as a predicate, but a para-operator?

    2. The notion of operation generalizes that of function, by admitting a finite list of arguments (variables with given respective ranges) instead of one.

      Can the one argument to a function be a composite?

      E.g., a dictionary/map.

      If so, then function and operation seem to be equal in expressive power.

    3. 2.3 will show how to construct operations with arity > 1 by means of functions

      Functions can be used to construct n-ary operations.

    4. list

      Passing values as list embeds semantics into order/places. Place-based semantics/addressing is no good. Is there a better way?

    5. arguments

      I thought "argument" is a name for a function's input value symbol, whereas for an operation it's "operand".

    6. by admitting a finite list of arguments

      Why should it be finite / bound to a particular size? I can see how an operator "+" could take any number of arguments. (+ 1 2 3 4 ...)

    7. The notion of operation generalizes that of function, by admitting a finite list of arguments (variables with given respective ranges) instead of one.

      A function in programming languages can take an arbitrary amount of inputs, whereas usually operators are ternary at most.

    8. Not all variables of set theory will have a range.

      I thought a bound variable will have at least an empty range. When there won't be any range at all?

    9. possible or authorized values

      What's the difference between "possible" and "authorized" variable values?

  8. Dec 2021
    1. EPA dosage efficacy The dosage of EPA supplementation ranged from 180 mg/d to 4000 mg/d. We separated the EPA-pure and EPA-major groups into ≤1 g/d and >1 g/d, depending on the EPA dosage. The results indicated that with an EPA dosage ≤1 g/d, the EPA-pure and EPA-major groups demonstrated significant beneficial effects on the improvement of depression (SMD = −0.50, P = 0.003, and SMD = −1.03, P = 0.03, for the fixed-effects and random-effects models, respectively). We then set a dosage boundary of 1.5 g/d and 2 g/d, but no significant results were detected.

      EPA dosage optimal for antidepressant effects is <=1g/d.

    1. In humans, serotonin is a neurotransmitter used throughout the body having action of 14 variants

      There are 14 variants of serotonin receptors in the human body.

    1. There are seven subtypes of serotonin receptors present in the body.[2]

      There are seven subtypes of serotonin receptors in the human body.

    2. The most clinically relevant function of serotonin is in psychiatric disorders; most commonly, its absence appears to be related to depression, anxiety, and mania.[5][4]

      Absence of serotonin is related with depression.

    1. With this suppression of GABA, the result is an increase in production and action of dopamine

      Inhibition of GABA results in increased production and action of dopamine

    2. Of the three endorphin types, beta-endorphins have been the most studied and prevalent, accounting for the majority of the functional properties of endorphins as generalized and understood as a whole.

      beta-endorphin seems to account for majority of functional properties of endorphins

    3. The pain relief experienced as a result of the release of endorphins has been determined to be greater than that of morphine

      Analgesic effect of endorphins is more potent than that of morphine.

    4. Thus, the sequences of beta-endorphins and gamma-endorphins essentially have the sequence of alpha-endorphins nested within them.

      gamma-endorphin nests alpha-endorphin

    5. Thus, the sequences of beta-endorphins and gamma-endorphins essentially have the sequence of alpha-endorphins nested within them.

      beta-endorphin nests gamma-endorphin

    1. The prototypical μ-opioid receptor agonist is morphine

      morphine is an agonist of mu-opioid receptors

    1. maps are equal if they have the same number of entries, and for every key/value entry in one map an equal key is present and mapped to an equal value in the other.

      It is possible to compare equality of a map solemnly by the second predicate "for every key/value entry in one map an equal key is present and mapped to an equal value in the other".

      Perhaps the definition of equality of maps can be amended to consist solemnly of the second predicate?

    2. sets are equal if they have the same count of elements and, for every element in one set, an equal element is in the other.

      It is possible to compare whether two sets are equal solemnly by the second predicate "for every element in one set, an equal element is in the other".

      The first predicate "sets are equal if they have the same count of elements" does not check for equality, rather is a fast check for inequality.

      Perhaps the definition of equality of sets can be amended to consist solemnly of the second predicate?

    3. Unicode characters are represented with \uNNNN as in Java.

      \uNNNN will fit up to three bytes, whereas UTF-8 allows for up to four bytes to be encoded. Can there be \uNNNNNN?

    1. β-Endorphins are produced primarily by both the anterior lobe of the pituitary gland [2,3], and in pro-opiomelanocortin (POMC) cells primarily located in the hypothalamus [3,4]

      beta-endorphin is produced by pituitary gland

    2. β-Endorphins are produced primarily by both the anterior lobe of the pituitary gland [2,3], and in pro-opiomelanocortin (POMC) cells primarily located in the hypothalamus [3,4]

      beta-endorphin is produced by hypothalamus

    1. Two such snapshots thus encode the future.

      It seems to me the only way to be able to derive any possible state of a system - is by having a snapshot of that system.

      Where snapshot includes the laws on which it operates.

    2. If you know where something is at two closely spaced instants, you can tell its speed and direction.

      The proposed constrains seem to be not enough to derive the one way how snapshot2 can be derived out of snapshot1.

    3. All the world's history can be determined from two snapshots taken in quick succession.

      It seems that there may be an infinite number of ways how snapshot2 can be derived out of snapshot1.

    4. Thus, experienced time is linear, it can be measured and it has an arrow.

      Study suggests that our perception of time is not linear and correlates with level of dopamine.

    5. All these phenomena, like memories, define a direction in time, and they all point the same way. Time has an arrow.

      So, perception of the universe by matter, namely humans, define properties of that universe, such as order of Nows?

    1. dopamine cell

      What is meant by it?

    2. Together, these features may allow brain circuits to toggle between two distinct dopamine messages, for learning and motivation respectively.

      What affects setting state to 'performance'?

    3. Together, these features may allow brain circuits to toggle between two distinct dopamine messages, for learning and motivation respectively.

      What affects setting state to 'learning'?

    4. dopamine effects on plasticity can be switched on or off by nearby circuit elements

      Does it mean that dopamine's effect on a circuit can be both learning and performance at the same time?

    5. excitability

      What's that?

    6. synaptic plasticity

      What's that?

    1. Since version 0.6 (2002[19]), Gnutella is a composite network made of leaf nodes and ultra nodes (also called ultrapeers). The leaf nodes are connected to a small number of ultrapeers (typically 3) while each ultrapeer is connected to more than 32 other ultrapeers. With this higher outdegree, the maximum number of hops a query can travel was lowered to 4.

      It does not guarantee that a query will be performed on all the nodes, does it?

  9. Nov 2021
    1. Piece Hash Comparisons If two torrents have pieces with the same hash, the data from those pieces will be re-used. This optimization greatly favors torrents with piece-aligned files.

      How would it escape same-key-attack, mentioned here.?

    1. Carroll, Bizer, Hayes, Stickler: Named Graphs, Provenance and Trust

      Link is broken, what's the document?

    1. The RDF standard introduces the notion of reification as an approach to provide a set of RDFtriples that describe some other RDF triple [HPS14].

      Named Graphs approach can be used to provide a set of triples about a set of triples.

    1. Also, if a repository stores a large number of named graphs, it is vital to enable the context indexes.

      What are "context indexes"?

    2. A significant drawback is the overload of the named graph parameter with an identifier instead of the file or source that produced the triple.

      What does it mean?

    3. What RDF* Improves

      A shortcoming of RDF* is in inability to reference multiple triplets.

    4. Technically, this is a fourth element, which can be attached to the <subject, predicate, object> triple

      In case there are multiple graphs that intersect on the same triplets, there may be a lot of repeated triplets.

    1. In particular we intend to use content-addressed ActivityStreams over XMPP.

      Sounds interesting.

    2. difficulties in providing reproducible development environments

      ClojureScript has problems with rde?

    3. It requires the usage of algorithms (e.g. the Expansion Algorithm or the Framing Algorithm) that are incomprehensible and just pure madness.

      I am not familiar with how it works, but it appears to me to be a straightforward derivation both ways.

      I wonder where I might be wrong.

    1. while the result of the checkout is called a working directory

      Why not "repository"?

    2. Updating a working copy with the latest files from the repository is simply called update

      Why not "checkout"?

    1. test.txt v1

      This git object is a blob, it does not carry information that it is named "test.txt v1" under a tree. (Also, the same blob can be referenced from different trees, and it can have different names as well.)

    1. git-cat-file

      Why is it not called 'git-cat-object', since it works on objects?

      An "object" can represent not only a "file" ("blob", in git's terms) but a "directory" ("tree", in git's terms) as well.

    1. By operation of the pigeonhole principle, no lossless compression algorithm can efficiently compress all possible data.

      I don't get it.

    1. Composing knowledge from events In any multi-actor system, like a team of collaborating robots, every actor must make decisions based on some current knowledge: a local world model, or an evolving set of goals. It may not be possible to centralise that knowledge – for example if the actors can lose their network connection; or the latency or locking behaviour of a central database is not acceptable. If the contributing data events are frequent, for example from sensors, every update has to be synthesised by every actor into their knowledge. This can rapidly become a computational headache. m-ld can help. The knowledge itself is maintained as convergent shared state, and each actor only needs to apply their own updates. The rich query syntax then lets them act upon what they need to know, when they need to act.

      Actors make decisions based on their local perception of the world.

    1. Connections between users of a social network

      Connection of user A to user B may not be the same as connection of user B to user A.

    2. There is no single best way to structure one’s data; every choice comes with significant tradeoffs. The larger our dataset becomes, the more important it is to tailor its structure to the way we intend to use and access it.

      Why not create as many indexes/data-structures as there are use-cases?

      Since any piece of content can be referenced a file-system-like index can be as such:

      pics
      ├── 2018
      │   ├── 2018-02-23-tabby.png
      │   └── 2018-04-14-tropical.png
      ├── cats
      │   ├── 2018-02-23-tabby.png
      │   └── 2019-12-16-black.png
      └── fish
          ├── 2017-03-05-freshwater.png
          ├── 2018-04-14-tropical.png
          └── 2020-10-02-blowfish.png
      

      Although this data structure seem to serve too many use-cases, it can be split.

    3. and the functions or operations that can be applied to the data

      This is not responsibility of a data structure.

      A data structure structures data, nothing else.

    1. Annotation with a SpecificResource that has a Selector for each of the Body and the Target

      Selector can be used as a Body.

    2. Describe the style in which the source resource should be presented for the Annotation

      Preference of how to perceive content seems to be a matter of taste and use-case, making it imposible to satisfy all possible combinations with a provided way.

      Perhaps this should be left on responsibility of an end-user?

    3. or simply the location where the current harvesting system discovered the resource

      In case annotation copies are being accreated with reasoning it will be hard to connect such reasoning.

      E.i., reasoning on copy A would not know of reasoning on copy B.

      It seems that all reasoning should be performed on original.

      Perhaps, to achieve that copies could be made unannotatable?

    4. Other Identities

      This is another big problem that seems to be out of scope of the problem this spec is meant to solve.

    5. is NOT RECOMMENDED for uses where the Body may need to be referred to from outside of the Annotation

      I'd imagine if an Annotation is meant to stay on the web indefinite, as would be in the case of immutable web that we may get at some point, at some point in time there inevitably will be a third-party that would like to annotate that annotation.

      Annotations that do not support annotation in turn would prevent further reasoning.

      For the web that is an open platform that seems to not be fitting.

    6. Hannah associates a tag and a description with two images using a single annotation

      How, in this case, Hannah would refer to an image from within the description?

    7. Her client associates a stylesheet with the Annotation

      Why to capture a stylesheet instead of what she wanted to express, as semantic data?

    8. is NOT RECOMMENDED for uses where the Body may need to be referred to from outside of the Annotation

      That seems to be the case not only for "bodyValue", but for "body" of type Resource as well, as it is also is not referencable.

    9. The identity of the SpecificResource is separate from the descriptions of the constraints.

      Why?

      SpecificResource can be uniquely identified by a composite identity of URI of Resource + constrains.

      That would allow to escape the need to have another extraneous unique id registered.

      Also that would allow different parties to deterministically uniquely identify the same SpecificResource without any communication.

    10. fragments for HTML cannot be used to describe an arbitrary range of text

      How to do so?

    11. "type": "Video"

      Even if no "format" is specified in an Annotation it may be specified in an External Web Resource.

    12. "type": "Video"

      Some clients may support one specific type and not support another specific type.

      By supplying generic type with no specific type we may encounter a case when a client may not be able to tell based on a generic type whether it can handle data or not.

      E.g., a client may support video/mp4 and not support video/ogg, leaving it unable to predict whether it can handle data typed as "video".

      It seems to me that a scenario when a client is not able to handle all specific types of a generic type is rather common.

    13. 3.2.2 Classes

      Can a specific type be expressed via Classes?

    14. it is also useful for a client to know that a resource with the format text/csv should not simply be rendered as plain text

      It should be up to a client to decide how handle data.

    15. It is useful for clients to know the general type of a Web Resource in advance.

      Ain't a general type can be derived out of a specific one?

      E.g., it is possible to derive a generic type of a specific mime type, because mime types have structure of type/subtype.

      E.g., video/mp4 -> video

    16. if information provided by the external resource contradicts the information provided by the annotation about it, then the external resource is authoritative and the information from the annotation should be disregarded

      Annotation refer an exact value of a resource.

      Annotator most likely does not expect this value to change.

      However, resources cannot be enforced to be immutable.

      Allowing an annotator to provide such local parameters would allow them to rely on at least their immutability.

    17. if information provided by the external resource contradicts the information provided by the annotation about it, then the external resource is authoritative and the information from the annotation should be disregarded

      Ain't it up to Annotation to decide how to view a resource?

    18. if information provided by the external resource contradicts the information provided by the annotation about it, then the external resource is authoritative and the information from the annotation should be disregarded

      Why so?

    19. textDirection

      Ain't this property can be derived out of 'language' property?

    20. processingLanguage

      Why Annotation takes on responsibilities of presentation?

      It can be presented in a miriad of ways and it's up to the consumer to decide how to view it up to their preferences.

    21. This information may be recorded as part of the Annotation, even if the representation of the resource must be retrieved from the Web.

      This seems necessary, because an author of Annotation may be a third-party for Target or Body, having no control over it, and yet may want to specify some data about it.

    22. the Body may also be embedded within the Annotation

      It won't be possible to refernce such Body of a published Annotation.

      So it won't be possible to annotate such Annotation.

      I.e., it is not possible to use such Annotation for reasoning further on.

      That may be fine in case no third-party will ever want to annotate it / use as part of their reasoning, but personally I would not be comfortable to count on that.

      Based on that reasoning, it seems to me that for the open web it would be more suitable to require of any published Annotation to have a referencable Body.

    23. the Body may also be embedded within the Annotation

      What for?

    24. An Annotation is a Web Resource.

      Is it a must for an Annotation to be resolvable?

      I.e., can it be not a Web Resource, but a Resource?

    25. Class Resources may be divided, conceptually, into groups called "classes"; members of a class are known as Instances of the class. Resources are associated with a particular class through typing. Classes are identified by IRIs, i.e., they are also Web Resources themselves. Type A special Relationship that associates an Instance of a class to the Class it belongs to. Instance An element of a group of Resources represented by a particular Class.

      What is it for?

    26. representation of the Annotation

      What parts does representation of Annotation have?

    27. are not to be considered authoritative information

      Why so?

    28. collections

      What is a "collection"?

    29. The Body resource may be a choice between multiple resources.

      Why?

    30. The Target or Body resource may be included in the Annotation to play a specific role.

      Why?

    31. The Target or Body resource may be included in the Annotation to play a specific role.

      What are such roles?

    32. The Target or Body resource may be a specific state of the resource.

      Target may refer to an html Resource.

    33. The Target or Body resource may be a specific state of the resource.

      What 'states' are possible?

    34. The Target or Body resource may be styled in a specific way.

      Why to style?

    35. rooted

      How so?

    36. associations between resources

      How to express what annotation refers to?

    37. structured model and format

      What's the difference between "structured model" and "format"?

  10. Oct 2021
    1. it’s really annoying

      I see how comments can be annoying to one.

      They may annoy if they are not useful.

      And their usefulness depends on use-case (a shocker, I know).

    2. Comments can lead you astray, because they get out of date. The code is the only source of truth.

      This is a sign that reasoning is not being captured thoroughly.

    3. These shouldn’t be comments! They should be in commit messages, or the wiki, or the issue tracker, etc

      Why should reasoning be spreaded across these places?

      Anything created in a project is an artifact of human reasoning, be it a mindset expressed in a text chunk, organization expressed in issues, sprints, etc., or a code block.

      All of that is humans' reasoning, some informal - expressed in a natural language; some formal - tickets, mock-ups, code. But it's reasoning nonetheless and it can be expressed in one reasoning graph, from a non-formal idea in a natural language down to a formal implementation in code. If the semantics are captured as data (of a ticket, of a meeting event, etc.), then tools of one's choice can be used by him to work on that data.

    1. RDF is an abstract knowledge representation model that does not differentiate data from metadata.

      It seems to me it does.

      RDF allows to express nodes and edges that reference nodes. Edges are metadata.

      My reasoning is:

      • Edges are data about nodes.
      • Nodes are data.
      • Edges are data about data.
      • Metadata is data about data.
      • Edges are metadata.

      However, what RDF does not allow is for an edge to reference another edge.

      I.e., nodes are referencable, edges are not.

      I.e., RDF does not allow metadata about metadata.

      RDF* allows exactly that, unlocking meta-level depth.

    1. Nested Embedded Triples

      Opens up a meta-level play.

    2. What RDF* Improves

      In RDF there are nodes and edges.

      RDF* allows to treat edges as nodes.

    3. :hasSpouse is a symmetric relation so that it can be inferred in the opposite direction

      :hasSpouse is a 2-ary relation.

    4. the metadata in the opposite direction is not asserted automatically, so it needs to be added

      This is a denormalization.

    5. <<:man :hasSpouse :woman>>

      There may be more than one :man :hasSpouse :woman, how to specify the exact one? I.e., statement may not be unique.

    6. What RDF* Improves

      A feature of RDF* is that it allows to reference relationships without the need to reify them.

      That means no change to data-model is required to be introduced when one wants to reference to a statement.

    7. << <<:man :hasSpouse :woman>> :startDate "2020-02-11"^^xsd:date >>

      Neat.

    8. According to the formal semantics of RDF*, each embedded triple also asserts the referenced statement and its retraction – deletes it. Unfortunately, this requirement breaks the compatibility with the standard reification and causes a non-transparent behavior when dealing with triples stored in multiple named graphs. GraphDB implements the embedded triples by introducing a new additional RDF type next to IRI, blank node, and literal.

      So the same syntax (<< >>) is overloaded with a different behaviour in GraphDB?

    9. GraphDB implements the embedded triples by introducing a new additional RDF type next to IRI, blank node, and literal.

      Where the formal definition of this type can be found?

    10. According to the formal semantics of RDF*, each embedded triple also asserts the referenced statement and its retraction – deletes it.

      Where does it state so?

    1. RDF reification as demonstrated in the example has two major shortcomings

      Another shortcoming is that a reified statement is not reified by itself.

    1. Scalability: In a many-to-many system, scale is essentially unlimited. Hardware (nodes) can be added at ease in any home or office by anyone, which is not the case with the current data center model.

      Yet datacenters have more resource budget before they run out and they provide scale seamlessly.

    1. it is possible so make following a link fire up a special application

      How could it be implemented?

    2. One must also be able to annotate links

      Are there any developments on this?

    1. a user de-fined extension namespaces

      What is that?

    2. Each SPARQL implementation has its own protocol torealize the binding between extension namespaces and function definitions

      I don't get. An example?

    3. limits the interoperability of the query

      How so?

    4. query and search

      What's the difference between "query" and "search"?

    1. Given the restrictions of the sandboxed iframe, it is not able to make calls outside of its own frame, nor is it able to read or modify anything about the parent page.

      Very nice.

    1. they can perform I/O using XMLHttpRequest (although the responseXML and channel attributes are always null) or fetch (with no such restrictions).
      <anchor>
    1. It is an isolated environment that is insulated from the window object, the document object, direct internet access

      Is it so?