From dbaa00855ce33109495d6aa6206241fc148ea14b Mon Sep 17 00:00:00 2001 From: Claude Date: Wed, 4 Nov 2026 05:54:11 +0000 Subject: [PATCH 1/3] Trace citation metadata through Yoast SEO and NLWeb Adds tools/yoast-nlweb-trace: a local WordPress 7.1 + Borges + Yoast SEO 28.8 + NLWeb site, built by setup.sh, and scripts that capture the fixture post (the markup-value corpus) at each stage on the way to an agent: the page's JSON-LD, Yoast's graph, Yoast's schema aggregator feed, NLWeb's index (its own ingest code, from a crawl and from the feed), and NLWeb's WordPress plugin answering an MCP `ask`. measure.py scores 78 field values per stage; probe.py checks which questions each stage can still answer. Today only titles (and DOIs inside @id URLs) get past Yoast: the full records stay in Borges' ItemList, which NLWeb's trim drops. NLWeb's WordPress plugin got no citations at all (fixed in #252). Two prototypes show what putting full records into Yoast's graph would carry, and at what page weight. No model was run: the ranking LLM is a recording stub. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01WPtgA2F1J2N3yCPk3cUX1P --- .prettierignore | 3 + tools/yoast-nlweb-trace/.gitignore | 1 + tools/yoast-nlweb-trace/README.md | 187 +++ tools/yoast-nlweb-trace/capture.sh | 30 + tools/yoast-nlweb-trace/llm-stub/index.php | 8 + tools/yoast-nlweb-trace/measure.py | 224 ++++ tools/yoast-nlweb-trace/nlweb_ingest.py | 33 + tools/yoast-nlweb-trace/probe.py | 44 + .../2026-11-04/main-as-is/1-page-json-ld.json | 179 +++ .../2026-11-04/main-as-is/3-schemamap.xml | 2 + .../main-as-is/3-yoast-aggregator.ndjson | 4 + .../main-as-is/4a-nlweb-crawl-docs.json | 107 ++ .../main-as-is/4b-nlweb-aggregator-docs.json | 105 ++ .../2026-11-04/main-as-is/5-nlweb-wp-mcp.json | 1 + .../5-nlweb-wp-ranking-prompts.jsonl | 1 + .../2026-11-04/main-as-is/survival.json | 1108 +++++++++++++++++ .../pr-252-as-is/1-page-json-ld.json | 179 +++ .../2026-11-04/pr-252-as-is/3-schemamap.xml | 2 + .../pr-252-as-is/3-yoast-aggregator.ndjson | 4 + .../pr-252-as-is/4a-nlweb-crawl-docs.json | 107 ++ .../4b-nlweb-aggregator-docs.json | 105 ++ .../pr-252-as-is/5-nlweb-wp-mcp.json | 1 + .../5-nlweb-wp-ranking-prompts.jsonl | 1 + .../2026-11-04/pr-252-as-is/survival.json | 1108 +++++++++++++++++ .../pr-252-embed/1-page-json-ld.json | 658 ++++++++++ .../2026-11-04/pr-252-embed/3-schemamap.xml | 2 + .../pr-252-embed/3-yoast-aggregator.ndjson | 4 + .../pr-252-embed/4a-nlweb-crawl-docs.json | 586 +++++++++ .../4b-nlweb-aggregator-docs.json | 584 +++++++++ .../pr-252-embed/5-nlweb-wp-mcp.json | 1 + .../5-nlweb-wp-ranking-prompts.jsonl | 1 + .../2026-11-04/pr-252-embed/survival.json | 1108 +++++++++++++++++ .../pr-252-pieces/1-page-json-ld.json | 718 +++++++++++ .../2026-11-04/pr-252-pieces/3-schemamap.xml | 2 + .../pr-252-pieces/3-yoast-aggregator.ndjson | 16 + .../pr-252-pieces/4a-nlweb-crawl-docs.json | 606 +++++++++ .../4b-nlweb-aggregator-docs.json | 671 ++++++++++ .../pr-252-pieces/5-nlweb-wp-mcp.json | 1 + .../5-nlweb-wp-ranking-prompts.jsonl | 1 + .../2026-11-04/pr-252-pieces/survival.json | 1108 +++++++++++++++++ .../results/2026-11-04/probe-questions.md | 48 + .../results/2026-11-04/survival-main.md | 12 + .../results/2026-11-04/survival-pr-252.md | 36 + tools/yoast-nlweb-trace/router.php | 6 + tools/yoast-nlweb-trace/run-variants.sh | 18 + tools/yoast-nlweb-trace/setup.sh | 66 + tools/yoast-nlweb-trace/site.php | 77 ++ tools/yoast-nlweb-trace/trace-variants.php | 90 ++ tools/yoast-nlweb-trace/variant.php | 5 + 49 files changed, 9969 insertions(+) create mode 100644 tools/yoast-nlweb-trace/.gitignore create mode 100644 tools/yoast-nlweb-trace/README.md create mode 100755 tools/yoast-nlweb-trace/capture.sh create mode 100644 tools/yoast-nlweb-trace/llm-stub/index.php create mode 100644 tools/yoast-nlweb-trace/measure.py create mode 100644 tools/yoast-nlweb-trace/nlweb_ingest.py create mode 100644 tools/yoast-nlweb-trace/probe.py create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/1-page-json-ld.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-schemamap.xml create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-yoast-aggregator.ndjson create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4a-nlweb-crawl-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4b-nlweb-aggregator-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-mcp.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-ranking-prompts.jsonl create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/survival.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/1-page-json-ld.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-schemamap.xml create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-yoast-aggregator.ndjson create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4a-nlweb-crawl-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4b-nlweb-aggregator-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-mcp.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-ranking-prompts.jsonl create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/survival.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/1-page-json-ld.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-schemamap.xml create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-yoast-aggregator.ndjson create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4a-nlweb-crawl-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4b-nlweb-aggregator-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-mcp.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-ranking-prompts.jsonl create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/survival.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/1-page-json-ld.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-schemamap.xml create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-yoast-aggregator.ndjson create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4a-nlweb-crawl-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4b-nlweb-aggregator-docs.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-mcp.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-ranking-prompts.jsonl create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/survival.json create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/probe-questions.md create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/survival-main.md create mode 100644 tools/yoast-nlweb-trace/results/2026-11-04/survival-pr-252.md create mode 100644 tools/yoast-nlweb-trace/router.php create mode 100755 tools/yoast-nlweb-trace/run-variants.sh create mode 100755 tools/yoast-nlweb-trace/setup.sh create mode 100644 tools/yoast-nlweb-trace/site.php create mode 100644 tools/yoast-nlweb-trace/trace-variants.php create mode 100644 tools/yoast-nlweb-trace/variant.php diff --git a/.prettierignore b/.prettierignore index b193af2..2f4c8da 100644 --- a/.prettierignore +++ b/.prettierignore @@ -37,3 +37,6 @@ tools/markup-value/out/ # Generated by tools/style-reference. tools/style-reference/out/ tools/style-reference/results/ + +# Captured by tools/yoast-nlweb-trace. +tools/yoast-nlweb-trace/results/ diff --git a/tools/yoast-nlweb-trace/.gitignore b/tools/yoast-nlweb-trace/.gitignore new file mode 100644 index 0000000..425a1b6 --- /dev/null +++ b/tools/yoast-nlweb-trace/.gitignore @@ -0,0 +1 @@ +llm-stub/prompts.jsonl diff --git a/tools/yoast-nlweb-trace/README.md b/tools/yoast-nlweb-trace/README.md new file mode 100644 index 0000000..9048f2b --- /dev/null +++ b/tools/yoast-nlweb-trace/README.md @@ -0,0 +1,187 @@ +# Citation metadata through Yoast SEO and NLWeb + +How much of a Borges bibliography's metadata is still there when it reaches +an AI agent through Yoast SEO's schema graph and NLWeb? The question came +from a reader of the markup-value study (`tools/markup-value/`, #203, #233). +Checking that JSON-LD is on the page is not enough. This traces it through +each stage of the retrieval pipeline, field by field. + +Not part of the plugin package (`tools/` is in `.distignore`). + +## What runs + +A local WordPress site that `setup.sh` builds. Nothing is mocked except the +LLM that NLWeb ranks with: + +| Piece | Version | +|---|---| +| WordPress | 7.1.4 (`WordPress/WordPress`), on SQLite (`sqlite-database-integration` v3.1.3), Twenty Twenty-Five | +| Borges | this checkout | +| Yoast SEO | 28.8 (the built plugin from `Yoast-dist/wordpress-seo`), schema on, schema aggregation endpoint on | +| NLWeb | `microsoft/NLWeb` at `b423f15` (2026-06-10): its WordPress plugin (`code/wordpress/nlweb`) and its Python ingest code (`AskAgent/python`) | + +The fixture is a single post: one paragraph, plus a Borges block holding the +twelve works of `tools/markup-value/corpus.json` in APA 7, saved by Borges' +PHP `save()` port. Those works are journal and magazine articles, a preprint, +a conference paper, two books with ISBNs, a chapter, and a web page. Between +them they have 8 DOIs, 2 ISBNs, and 78 field values to look for. + +## The stages + +``` +post ─► 1 page HTML ──────────────► 4a NLWeb index (crawl: every JSON-LD script, then trim) + │ + ├► 2 Yoast's graph (the yoast-schema-graph script) + │ + ├► 3 Yoast schema aggregator feed ───► 4b NLWeb index (db_load's JSON path, then trim) + │ (/schemamap.xml → /wp-json/yoast/v1/schema-aggregator/get-schema/post) + │ + └► 5 NLWeb WordPress plugin: MCP `ask` → WP_Query → Yoast graph for the post + → 5p ranking prompt (the LLM sees this) → 5 MCP answer (the agent gets this) +``` + +1. **Page HTML.** Every JSON-LD script on the page: Yoast's graph, plus + Borges' `ItemList`, joined by `@id` as a JSON-LD consumer would join them. +2. **Yoast's graph only.** A reader that takes Yoast's script and nothing else. +3. **Yoast's schema aggregator.** This is the feed Yoast offers NLWeb. It is + built from Yoast's graph for each post, not from the rendered page. +4. **NLWeb's index.** This is NLWeb's own code (`nlweb_ingest.py` imports + it) applied to the page (4a, the crawler's + `extract_schema_markup` → `prepare_documents_from_json`) and to the feed + (4b, `db_load`'s `process_line` → `prepare_documents_from_json`). Both go + through `trim_schema_json`, which keeps what is stored and later handed + back. This NLWeb commit has no reader for `schemamap.xml`, so the feed is + loaded as a JSON file, as `db_load` does for any URL or file. +5. **NLWeb's WordPress plugin.** An MCP `tools/call ask` to + `/wp-json/nlweb/v1/mcp`, as an agent would make it. The plugin finds the + post with `WP_Query`, asks Yoast for its graph + (`YoastSEO()->meta->for_post()`), and keeps the main node. **5p** is the + prompt its ranking LLM sees (trimmed, then cut at 4,000 characters). + **5** is the `schema_object` the agent receives. + +`measure.py` checks each work's title, authors (every family name, in order), +year, container, volume, issue, pages, DOI, ISBN, and publisher at every +stage. A field counts only when a schema.org property labels it. When the DOI +survives only inside a work's `@id` URL (`https://doi.org/…`), that is +reported separately: a reader that knows doi.org URLs can recover it, but no +property labels it. + +## Findings (2026-11-04) + +Full tables: [`results/2026-11-04/survival-main.md`](results/2026-11-04/survival-main.md), +[`survival-pr-252.md`](results/2026-11-04/survival-pr-252.md), and +[`probe-questions.md`](results/2026-11-04/probe-questions.md). + +Labeled field values that survive, out of 78: + +| Stage | Borges today | With #252 | Prototype: full records in `citation` | Prototype: full records as graph nodes | +|---|---|---|---|---| +| 1 Page HTML, all JSON-LD | 78 | 78 | 78 | 78 | +| 2 Yoast's graph only | 12 | 12 | 78 | 78 | +| 3 Yoast aggregator feed | 12 | 12 | 78 | 78 | +| 4a NLWeb index, crawled page | 12 | 12 | 78 | 71 | +| 4b NLWeb index, aggregator feed | 12 | 12 | 78 | 71 | +| 5 NLWeb WordPress plugin, MCP answer | **0** | 12 | 78 | 12 | +| 5p …its ranking prompt | 0 | 12 | 24 | 12 | + +The 12 in the "Borges today" column are the titles. Wherever 12 appears, all +8 DOIs are also left inside `@id` URLs. + +1. **Today only the citation links survive, not the records.** Borges puts + a short reference to each work (`@type`, `@id`, `name`) on Yoast's + Article as `citation`, and keeps each work's full description in its own + `ItemList`, joined to it by `@id`. Everything downstream of Yoast reads + only Yoast's graph, so an agent gets 12 titles, 12 types, and 8 DOIs that + are recoverable from their URLs. It gets no authors, years, journals, + volumes, pages, ISBNs, or publishers. +2. **NLWeb drops the `ItemList` outright.** Its `trim_schema_json` skips + every `ItemList`, `ListItem`, and `WebPage` node, along with each node's + `publisher` and `mainEntityOfPage`. So crawling the page (4a) gets no more + than Yoast's feed (4b), even though the full records are in the HTML. + NLWeb also indexes no body text, so the formatted reference list is gone + too. +3. **Bug, fixed in #252: NLWeb's WordPress plugin got no citations at all.** + Borges looked the post up from the main query, and the plugin asks Yoast + for a graph from inside a REST request. With #252 its answers carry all 12 + references. +4. **Yoast passes through whatever reaches its graph.** Both prototypes + (`trace-variants.php`, which runs on the test site only) deliver every + field through Yoast's graph and its aggregator. The aggregator merges + top-level nodes that share an `@id` across the posts on a feed page. With + separate graph nodes, a work cited by many posts would therefore become + one node; records embedded in `citation` are repeated in each post's + Article. +5. **The two prototypes split on the NLWeb side:** + - *Full records inside `citation`* reach every stage, including the + plugin's MCP answer, which keeps only the Article. NLWeb trims only the + top-level node, so `publisher` survives nested. The ranking LLM, though, + sees just the first 4 of the 12 works before its 4,000-character cut. + - *Full records as separate graph nodes* survive the Python ingest, but + lose `publisher` (trimmed from every top-level node) and the web page + work (`WebPage` is skipped). The plugin's MCP answer keeps only the + Article, so it gets the references alone, as it does today. +6. **Cost.** On this page, Yoast's script grows from 7.6 KB to 28.7 KB + (embedded) or 27.2 KB (nodes), and the whole page from 96 KB to 117 or + 116 KB. The records then appear twice, once in Yoast's graph and once in + Borges' `ItemList`, unless the `ItemList` is changed as well. + +### Questions only the lost fields can answer + +`probe.py` asks whether each stage still holds the fields a question needs +("@id" means the answer is only inside a doi.org URL): + +| Question | Today: 3 feed | Today: 4b index | Today: 5 MCP | #252: 5 MCP | Embedded: 5 MCP | Nodes: 4b index | +|---|---|---|---|---|---|---| +| Who wrote "Array programming with NumPy", in order? | no | no | no | no | yes | yes | +| Which cited works came out before 2000? | no | no | no | no | yes | yes | +| Which cited articles appeared in Nature, and in which volumes? | no | no | no | no | yes | yes | +| What pages does Knuth's "Literate programming" run to? | no | no | no | no | yes | yes | +| What is the ISBN of the cited "Introduction to algorithms"? | no | no | no | no | yes | yes | +| Who published "Labyrinths"? | no | no | no | no | yes | no | +| What is the DOI of the BERT paper? | @id | @id | no | @id | yes | yes | + +These columns show whether the data is there. They don't show what a model +answered. + +### What this does not show + +- **No model answered anything.** The NLWeb plugin's LLM is `llm-stub/`, + which records its prompt and gives every item a score of 90. Stages 5 and + 5p are exactly what a real model and agent would be given. Whether a model + then uses the fields is a separate experiment, and it needs an API key. +- **No vector database or embeddings.** NLWeb stores `schema_json` as it is + and returns it unchanged. The functions run here are the ones that decide + what gets stored. +- **One post, one site, one version of each tool.** Yoast 28.8's aggregator + and NLWeb's trim rules are recent and may change. +- **Nothing here is about ranking or AI citation.** It shows which facts an + agent could be given. It does not show whether any search engine or + assistant rewards them. + +## Running it + +From the repository root, after `composer install` and `npm run build`. It +needs PHP 8.x with `pdo_sqlite`, Python 3.10+, git, and composer: + +```sh +export TRACE_STACK=/tmp/borges-trace # any empty folder +tools/yoast-nlweb-trace/setup.sh # clones, installs, serves :8890 and :8891 +tools/yoast-nlweb-trace/run-variants.sh "$TRACE_STACK/out" # as-is, embed, pieces +python3 tools/yoast-nlweb-trace/probe.py "$TRACE_STACK/out"/*/ +``` + +`capture.sh OUT_DIR` captures one state of the site. `measure.py` and +`probe.py` read captures. `variant.php` sets the `borges_trace_variant` +option that `trace-variants.php` reads (`''`, `embed`, or `pieces`). For the +pre-#252 baseline, check out an older `includes/json-ld-enrichment.php` and +run `run-variants.sh OUT as-is`. + +Two things to know about the setup: Yoast-dist ships without an autoloader, +so `setup.sh` makes one with `composer dump-autoload --no-scripts` (Yoast's +own post-autoload script deletes its built container), and it turns plugins +on through the `active_plugins` option because Yoast's activation fails from +the command line. + +`results/2026-11-04/` holds the captures behind the tables. Each page's +JSON-LD is extracted to `1-page-json-ld.json`; the full pages are left out +for size. diff --git a/tools/yoast-nlweb-trace/capture.sh b/tools/yoast-nlweb-trace/capture.sh new file mode 100755 index 0000000..ce7bf9b --- /dev/null +++ b/tools/yoast-nlweb-trace/capture.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash +# Capture every stage for the fixture post into OUT_DIR (see README.md). +# Usage: capture.sh OUT_DIR (with the site from setup.sh running) +set -euo pipefail +out="$1" +here="$(cd "$(dirname "$0")" && pwd)" +stack="${TRACE_STACK:?set TRACE_STACK to the folder setup.sh built}" +site="http://localhost:8890" +page="$site/what-a-bibliography-tells-machines/" +mkdir -p "$out" + +# 1-2. The page as a crawler fetches it; measure.py splits out Yoast's graph. +curl -sf "$page" -o "$out/1-page.html" + +# 3. Yoast's schema aggregator feed (what /schemamap.xml points NLWeb at). +curl -sf "$site/schemamap.xml" -o "$out/3-schemamap.xml" +curl -sf "$site/wp-json/yoast/v1/schema-aggregator/get-schema/post" -o "$out/3-yoast-aggregator.ndjson" + +# 4. NLWeb's own ingest code on the page (crawl) and on the feed. +NLWEB_CONFIG_DIR="$stack/nlweb/config" "$stack/venv/bin/python" -I "$here/nlweb_ingest.py" \ + "$stack/nlweb/AskAgent/python" "$out/1-page.html" "$out/3-yoast-aggregator.ndjson" "$out" | grep -v '^Warning' || true + +# 5. NLWeb's WordPress plugin over MCP, as an agent calls it. The LLM it +# ranks with is the stub in llm-stub/, which records the prompt it saw. +: > "$here/llm-stub/prompts.jsonl" +curl -sf -X POST -H 'Content-Type: application/json' "$site/wp-json/nlweb/v1/mcp" \ + -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"ask","arguments":{"query":"NumPy"}}}' \ + -o "$out/5-nlweb-wp-mcp.json" +cp "$here/llm-stub/prompts.jsonl" "$out/5-nlweb-wp-ranking-prompts.jsonl" +echo "captured $out" diff --git a/tools/yoast-nlweb-trace/llm-stub/index.php b/tools/yoast-nlweb-trace/llm-stub/index.php new file mode 100644 index 0000000..f044ba7 --- /dev/null +++ b/tools/yoast-nlweb-trace/llm-stub/index.php @@ -0,0 +1,8 @@ + 90, 'description' => 'stub ranking', 'summary' => 'stub summary', 'requires_decontextualization' => 'False', 'decontextualized_query' => '' ); +header( 'Content-Type: application/json' ); +echo json_encode( array( 'content' => array( array( 'type' => 'text', 'text' => json_encode( $answer ) ) ) ) ); diff --git a/tools/yoast-nlweb-trace/measure.py b/tools/yoast-nlweb-trace/measure.py new file mode 100644 index 0000000..9e659d8 --- /dev/null +++ b/tools/yoast-nlweb-trace/measure.py @@ -0,0 +1,224 @@ +"""Field-by-field survival of the corpus through each captured stage. + +argv: [ ...] +Writes /survival.json and prints a summary table. + +For each stage it gathers every JSON-LD node it can reach, merges the nodes +that share an `@id` (as a JSON-LD consumer would), finds each corpus work by +its `@id` (its DOI URL, else the page's `#ref-` anchor), and checks each +field the corpus gives it: + +- labeled: the value is under a schema.org property (author names in + order, `datePublished`, `isPartOf` names, `volumeNumber`, an + `identifier`/`isbn`/`sameAs`, `publisher`). +- id-only: only the DOI, and only inside the `@id` URL (a reader that + knows doi.org URLs can recover it; nothing labels it). +- missing. + +The ranking-prompt row is the MCP answer's node as NLWeb's WordPress plugin +hands it to the ranking LLM: trimmed, then cut at 4,000 characters. A work +counts there only if its whole description falls before the cut (the next +work's `@id`, or the end of the JSON, is inside the prompt). +""" +import html as htmlmod +import json +import os +import re +import sys + +FIELDS = ['title', 'authors', 'year', 'container', 'volume', 'issue', 'pages', 'doi', 'isbn', 'publisher'] + + +def expected(item): + exp = {'title': item['title']} + names = [a.get('family') or a.get('literal') for a in item.get('author', [])] + if names: + exp['authors'] = names + parts = item.get('issued', {}).get('date-parts', [[None]])[0] + if parts and parts[0]: + exp['year'] = str(parts[0]) + for csl, key in (('container-title', 'container'), ('volume', 'volume'), ('issue', 'issue'), + ('page', 'pages'), ('DOI', 'doi'), ('ISBN', 'isbn'), ('publisher', 'publisher')): + if item.get(csl): + exp[key] = str(item[csl]) + return exp + + +def walk(obj): + if isinstance(obj, dict): + yield obj + for v in obj.values(): + yield from walk(v) + elif isinstance(obj, list): + for v in obj: + yield from walk(v) + + +def merge(a, b): + out = dict(a) + for k, v in b.items(): + if k not in out: + out[k] = v + elif isinstance(out[k], dict) and isinstance(v, dict): + out[k] = merge(out[k], v) + elif out[k] != v and k not in ('@id', '@type'): + out[k] = (out[k] if isinstance(out[k], list) else [out[k]]) + (v if isinstance(v, list) else [v]) + return out + + +def index(roots): + nodes = {} + for node in walk(roots): + if isinstance(node.get('@id'), str) and len(node) > 1: + nodes[node['@id']] = merge(nodes.get(node['@id'], {}), node) + return nodes + + +def strings(obj, keys=None): + """Every string under obj, optionally only under the given property names.""" + out = [] + if isinstance(obj, dict): + for k, v in obj.items(): + if k == '@id': + continue + if keys is None or k in keys: + out += strings(v) + else: + out += strings(v, keys) + elif isinstance(obj, list): + for v in obj: + out += strings(v, keys) + elif isinstance(obj, (str, int, float)): + if keys is None: + out.append(str(obj)) + return out + + +def as_list(v): + return v if isinstance(v, list) else ([] if v is None else [v]) + + +def check(node, exp, field, work_id): + want = exp[field] + norm = lambda s: re.sub(r'\s+', ' ', s).strip().lower() + if field == 'title': + return any(norm(want) == norm(s) for s in strings(node.get('name'))) + if field == 'authors': + got = [] + for a in as_list(node.get('author')): + if isinstance(a, dict): + got.append(a.get('familyName') or a.get('name') or '') + elif isinstance(a, str): + got.append(a) + return len(got) == len(want) and all(w.lower() in g.lower() for w, g in zip(want, got)) + if field == 'year': + return any(s.startswith(want) for s in strings(node.get('datePublished'))) + if field == 'container': + return any(norm(want) == norm(s) for s in strings(node.get('isPartOf'), {'name'})) + if field == 'volume': + return want in strings(node.get('isPartOf'), {'volumeNumber'}) + if field == 'issue': + return want in strings(node.get('isPartOf'), {'issueNumber'}) + if field == 'pages': + return want in strings(node, {'pagination'}) or want.split('-')[0] in strings(node, {'pageStart'}) + if field == 'doi': + labeled = strings(node, {'identifier', 'sameAs', 'url'}) + if any(want.lower() in s.lower() for s in labeled): + return True + return 'id-only' if want.lower() in work_id.lower() else False + if field == 'isbn': + return any(want in re.sub(r'[^0-9X]', '', s) for s in strings(node, {'isbn', 'identifier'})) + if field == 'publisher': + return any(norm(want) == norm(s) for s in strings(node.get('publisher'), {'name'}) + strings(as_list(node.get('publisher')))) + return False + + +def prompt_reach(prompt, stage5): + """The `@id`s whose whole description is inside the (cut) ranking prompt.""" + m = re.search(r'schema\.org format is "(.*)"\.', prompt, re.S) + text = m.group(1) if m else prompt + cut = text.endswith('...}') + reached = set() + for root in stage5: + for i, ref in enumerate(as_list((root or {}).get('citation'))): + wid = ref.get('@id', '') if isinstance(ref, dict) else '' + esc = json.dumps(wid)[1:-1].replace('/', '\\/') + pos = text.find(esc) + if pos < 0: + continue + rest = as_list(root['citation'])[i + 1:] + nxt = json.dumps(rest[0].get('@id', ''))[1:-1].replace('/', '\\/') if rest and isinstance(rest[0], dict) else None + if (nxt and text.find(nxt, pos) > 0) or (not nxt and not cut): + reached.add(wid) + return reached + + +def stage_roots(run): + page = open(os.path.join(run, '1-page.html'), encoding='utf-8').read() + scripts = re.findall(r'', page, re.S) + stages = { + '1 page HTML (all JSON-LD)': [json.loads(s) for _, s in scripts], + '2 Yoast graph only': [json.loads(s) for a, s in scripts if 'yoast-schema-graph' in a], + '3 Yoast aggregator feed': [json.loads(l) for l in open(os.path.join(run, '3-yoast-aggregator.ndjson')) if l.strip()], + '4a NLWeb index, crawled page': [d['schema_json'] for d in json.load(open(os.path.join(run, '4a-nlweb-crawl-docs.json')))], + '4b NLWeb index, aggregator feed': [d['schema_json'] for d in json.load(open(os.path.join(run, '4b-nlweb-aggregator-docs.json')))], + } + mcp = json.load(open(os.path.join(run, '5-nlweb-wp-mcp.json'))) + results = json.loads(mcp['result']['content'][0]['text']).get('results', []) + stages['5 NLWeb WP plugin, MCP answer'] = [r.get('grounding', {}).get('schema_object') for r in results] + prompts = [] + for line in open(os.path.join(run, '5-nlweb-wp-ranking-prompts.jsonl')): + if line.strip(): + prompts.append(json.loads(line)['messages'][0]['content']) + return stages, '\n'.join(prompts) + + +def main(): + corpus = json.load(open(sys.argv[1])) + page_url = sys.argv[2] + rows = [] + for run in sys.argv[3:]: + stages, prompt = stage_roots(run) + report = {} + for name, roots in stages.items(): + nodes = index(roots) + report[name] = {} + for item in corpus['items']: + exp = expected(item) + wid = 'https://doi.org/' + item['DOI'] if item.get('DOI') else page_url + '#ref-' + item['id'] + node = nodes.get(wid, {}) + report[name][item['id']] = {f: (check(node, exp, f, wid if node else '') if f in exp else None) for f in FIELDS} + report[name][item['id']]['_present'] = bool(node) + stage5 = stages['5 NLWeb WP plugin, MCP answer'] + reached = prompt_reach(prompt, stage5) + mcp = report['5 NLWeb WP plugin, MCP answer'] + report['5p NLWeb WP plugin, ranking prompt (4,000-char cut)'] = {} + for item in corpus['items']: + wid = 'https://doi.org/' + item['DOI'] if item.get('DOI') else page_url + '#ref-' + item['id'] + row = dict(mcp[item['id']]) + if wid not in reached: + row = {f: (False if v is not None else None) for f, v in row.items()} + row['_present'] = False + report['5p NLWeb WP plugin, ranking prompt (4,000-char cut)'][item['id']] = row + json.dump(report, open(os.path.join(run, 'survival.json'), 'w'), indent=1) + rows.append((os.path.basename(run.rstrip('/')), report)) + + for run, report in rows: + print(f'\n## {run}\n') + print('| Stage | Works reached | ' + ' | '.join(FIELDS) + ' | Labeled pairs |') + print('|---' * (len(FIELDS) + 3) + '|') + for stage, works in report.items(): + n_reached = sum(1 for w in works.values() if w.get('_present')) + cells, total, ok = [], 0, 0 + for f in FIELDS: + vals = [w[f] for w in works.values() if w[f] is not None] + good = sum(1 for v in vals if v is True) + idonly = sum(1 for v in vals if v == 'id-only') + total += len(vals) + ok += good + cells.append(f'{good}/{len(vals)}' + (f' (+{idonly} in @id)' if idonly else '')) + print(f'| {stage} | {n_reached}/12 | ' + ' | '.join(cells) + f' | {ok}/{total} |') + + +if __name__ == '__main__': + main() diff --git a/tools/yoast-nlweb-trace/nlweb_ingest.py b/tools/yoast-nlweb-trace/nlweb_ingest.py new file mode 100644 index 0000000..115b42d --- /dev/null +++ b/tools/yoast-nlweb-trace/nlweb_ingest.py @@ -0,0 +1,33 @@ +"""Run NLWeb's own ingest functions on the captured stages, offline. + +argv: +""" +import json, os, sys + +nl, page, agg, out = sys.argv[1:5] +sys.path.insert(0, nl) +from data_loading.db_load import process_line # noqa: E402 +from data_loading.db_load_utils import prepare_documents_from_json # noqa: E402 +from scraping.extractMarkup import extract_canonical_url, extract_schema_markup # noqa: E402 + +def dump(name, docs): + rows = [{**d, 'schema_json': json.loads(d['schema_json'])} for d in docs] + with open(os.path.join(out, name), 'w') as f: + json.dump(rows, f, indent=1, ensure_ascii=False) + print(name, len(rows), 'documents') + +# A. Crawl: incrementalCrawlAndLoad's steps for one saved page. +url = extract_canonical_url(page) +docs, _ = prepare_documents_from_json(url, extract_schema_markup(page), 'borges-trace') +dump('4a-nlweb-crawl-docs.json', docs) + +# B. Yoast's aggregator feed through db_load's JSON path (one JSON object per line). +docs = [] +for line in open(agg, encoding='utf-8'): + if not line.strip(): + continue + u, j = process_line(line) + if u and j: + d, _ = prepare_documents_from_json(u, j, 'borges-trace') + docs.extend(d) +dump('4b-nlweb-aggregator-docs.json', docs) diff --git a/tools/yoast-nlweb-trace/probe.py b/tools/yoast-nlweb-trace/probe.py new file mode 100644 index 0000000..5ee46a7 --- /dev/null +++ b/tools/yoast-nlweb-trace/probe.py @@ -0,0 +1,44 @@ +"""Questions only the fields lost on the way can answer, checked per stage. + +argv: [ ...] (each with survival.json from measure.py) + +A question is answerable at a stage when every field it needs survived +there with its label. "@id" means only the DOI's URL is left: a reader that +knows doi.org URLs can recover it. This checks what the data holds, not what +a model says: the NLWeb ranking LLM in these runs was a stub. +""" +import json +import os +import sys + +QUESTIONS = [ + ('Who wrote "Array programming with NumPy", in author order?', [('harris2020', 'authors')]), + ('Which of the cited works came out before 2000?', [(w, 'year') for w in ( + 'harris2020', 'lecun2015', 'wilkinson2016', 'knuth1984', 'bernerslee2001', 'maldacena1998', + 'vaswani2017', 'devlin2019', 'cormen2009', 'borges1962', 'borges1962babel')]), + ('Which cited articles appeared in Nature, and in which volumes?', [ + (w, f) for w in ('harris2020', 'lecun2015') for f in ('container', 'volume')]), + ('What pages does Knuth\'s "Literate programming" run to?', [('knuth1984', 'pages')]), + ('What is the ISBN of the cited edition of "Introduction to algorithms"?', [('cormen2009', 'isbn')]), + ('Who published "Labyrinths"?', [('borges1962', 'publisher')]), + ('What is the DOI of the BERT paper?', [('devlin2019', 'doi')]), +] + + +def verdict(stage, needs): + vals = [stage[w][f] for w, f in needs] + if all(v is True for v in vals): + return 'yes' + if all(v in (True, 'id-only') for v in vals): + return '@id' + return 'no' + + +for run in sys.argv[1:]: + report = json.load(open(os.path.join(run, 'survival.json'))) + stages = list(report) + print(f'\n### {os.path.basename(run.rstrip("/"))}\n') + print('| Question | ' + ' | '.join(s.split(' ', 1)[0] for s in stages) + ' |') + print('|---' * (len(stages) + 1) + '|') + for q, needs in QUESTIONS: + print(f'| {q} | ' + ' | '.join(verdict(report[s], needs) for s in stages) + ' |') diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/1-page-json-ld.json b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/1-page-json-ld.json new file mode 100644 index 0000000..52a61cc --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/1-page-json-ld.json @@ -0,0 +1,179 @@ +[ +{ + "@context": "https:\/\/schema.org", + "@graph": [ + { + "@type": "Article", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#article", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "author": { + "name": "admin", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "mainEntityOfPage": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ] + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "url": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "name": "What a bibliography tells machines - Borges trace", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/#website" + }, + "datePublished": "2026-11-04T05:51:33+00:00", + "author": { + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "breadcrumb": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb" + }, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "ReadAction", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + ] + } + ] + }, + { + "@type": "BreadcrumbList", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb", + "itemListElement": [ + { + "@type": "ListItem", + "position": 1, + "name": "Home", + "item": "http:\/\/localhost:8890\/" + }, + { + "@type": "ListItem", + "position": 2, + "name": "What a bibliography tells machines" + } + ] + }, + { + "@type": "WebSite", + "@id": "http:\/\/localhost:8890\/#website", + "url": "http:\/\/localhost:8890\/", + "name": "Borges trace", + "description": "", + "potentialAction": [ + { + "@type": "SearchAction", + "target": { + "@type": "EntryPoint", + "urlTemplate": "http:\/\/localhost:8890\/?s={search_term_string}" + }, + "query-input": { + "@type": "PropertyValueSpecification", + "valueRequired": true, + "valueName": "search_term_string" + } + } + ], + "inLanguage": "en-US" + }, + { + "@type": "Person", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": { + "@type": "ImageObject", + "inLanguage": "en-US", + "@id": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "url": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "contentUrl": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "caption": "admin" + }, + "sameAs": [ + "http:\/\/localhost:8890" + ], + "url": "http:\/\/localhost:8890\/author\/admin\/" + } + ] + }, +{"@context":"https://schema.org","@type":"ItemList","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#bibliography-markup-value","numberOfItems":12,"itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web","author":[{"@type":"Person","name":"Tim Berners-Lee","familyName":"Berners-Lee","givenName":"Tim"},{"@type":"Person","name":"James Hendler","familyName":"Hendler","givenName":"James"},{"@type":"Person","name":"Ora Lassila","familyName":"Lassila","givenName":"Ora"}],"datePublished":"2001-05","identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/scientificamerican0501-34"},"url":"https://doi.org/10.1038/scientificamerican0501-34","isPartOf":{"@type":"PublicationIssue","issueNumber":"5","isPartOf":{"@type":"PublicationVolume","volumeNumber":"284","isPartOf":{"@type":"Periodical","name":"Scientific American"}}},"pagination":"34-43","pageStart":"34","pageEnd":"43"}},{"@type":"ListItem","position":2,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"isbn":"9780811200127","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780811200127"},"editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":3,"item":{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","isPartOf":{"@type":"Book","name":"Labyrinths: Selected stories and other writings"},"publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"pagination":"51-58","pageStart":"51","pageEnd":"58","editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}],"translator":[{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":4,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms","author":[{"@type":"Person","name":"Thomas H. Cormen","familyName":"Cormen","givenName":"Thomas H."},{"@type":"Person","name":"Charles E. Leiserson","familyName":"Leiserson","givenName":"Charles E."},{"@type":"Person","name":"Ronald L. Rivest","familyName":"Rivest","givenName":"Ronald L."},{"@type":"Person","name":"Clifford Stein","familyName":"Stein","givenName":"Clifford"}],"datePublished":"2009","publisher":{"@type":"Organization","name":"MIT Press","location":"Cambridge, MA"},"isbn":"9780262033848","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780262033848"},"bookEdition":"3"}},{"@type":"ListItem","position":5,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding","author":[{"@type":"Person","name":"Jacob Devlin","familyName":"Devlin","givenName":"Jacob"},{"@type":"Person","name":"Ming-Wei Chang","familyName":"Chang","givenName":"Ming-Wei"},{"@type":"Person","name":"Kenton Lee","familyName":"Lee","givenName":"Kenton"},{"@type":"Person","name":"Kristina Toutanova","familyName":"Toutanova","givenName":"Kristina"}],"datePublished":"2019","isPartOf":{"@type":"Book","name":"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies"},"publisher":{"@type":"Organization","name":"Association for Computational Linguistics"},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.18653/v1/N19-1423"},"url":"https://doi.org/10.18653/v1/N19-1423","pagination":"4171-4186","pageStart":"4171","pageEnd":"4186"}},{"@type":"ListItem","position":6,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy","author":[{"@type":"Person","name":"Charles R. Harris","familyName":"Harris","givenName":"Charles R."},{"@type":"Person","name":"K. Jarrod Millman","familyName":"Millman","givenName":"K. Jarrod"},{"@type":"Person","name":"Stéfan J. van der Walt","familyName":"van der Walt","givenName":"Stéfan J."},{"@type":"Person","name":"Ralf Gommers","familyName":"Gommers","givenName":"Ralf"}],"datePublished":"2020-09-16","isPartOf":{"@type":"PublicationIssue","issueNumber":"7825","isPartOf":{"@type":"PublicationVolume","volumeNumber":"585","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/s41586-020-2649-2"},"url":"https://doi.org/10.1038/s41586-020-2649-2","pagination":"357-362","pageStart":"357","pageEnd":"362"}},{"@type":"ListItem","position":7,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming","author":[{"@type":"Person","name":"Donald E. Knuth","familyName":"Knuth","givenName":"Donald E."}],"datePublished":"1984","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"27","isPartOf":{"@type":"Periodical","name":"The Computer Journal"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1093/comjnl/27.2.97"},"url":"https://doi.org/10.1093/comjnl/27.2.97","pagination":"97-111","pageStart":"97","pageEnd":"111"}},{"@type":"ListItem","position":8,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning","author":[{"@type":"Person","name":"Yann LeCun","familyName":"LeCun","givenName":"Yann"},{"@type":"Person","name":"Yoshua Bengio","familyName":"Bengio","givenName":"Yoshua"},{"@type":"Person","name":"Geoffrey Hinton","familyName":"Hinton","givenName":"Geoffrey"}],"datePublished":"2015-05-28","isPartOf":{"@type":"PublicationIssue","issueNumber":"7553","isPartOf":{"@type":"PublicationVolume","volumeNumber":"521","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/nature14539"},"url":"https://doi.org/10.1038/nature14539","pagination":"436-444","pageStart":"436","pageEnd":"444"}},{"@type":"ListItem","position":9,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity","author":[{"@type":"Person","name":"Juan Maldacena","familyName":"Maldacena","givenName":"Juan"}],"datePublished":"1998","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"2","isPartOf":{"@type":"Periodical","name":"Advances in Theoretical and Mathematical Physics"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.4310/ATMP.1998.v2.n2.a1"},"url":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","pagination":"231-252","pageStart":"231","pageEnd":"252"}},{"@type":"ListItem","position":10,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need","author":[{"@type":"Person","name":"Ashish Vaswani","familyName":"Vaswani","givenName":"Ashish"},{"@type":"Person","name":"Noam Shazeer","familyName":"Shazeer","givenName":"Noam"},{"@type":"Person","name":"Niki Parmar","familyName":"Parmar","givenName":"Niki"},{"@type":"Person","name":"Jakob Uszkoreit","familyName":"Uszkoreit","givenName":"Jakob"}],"datePublished":"2017-06-12","publisher":{"@type":"Organization","name":"arXiv"},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.48550/arXiv.1706.03762"},{"@type":"PropertyValue","propertyID":"arXiv","value":"1706.03762"}],"url":"https://doi.org/10.48550/arXiv.1706.03762","sameAs":"https://arxiv.org/abs/1706.03762"}},{"@type":"ListItem","position":11,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship","author":[{"@type":"Person","name":"Mark D. Wilkinson","familyName":"Wilkinson","givenName":"Mark D."},{"@type":"Person","name":"Michel Dumontier","familyName":"Dumontier","givenName":"Michel"},{"@type":"Person","name":"IJsbrand Jan Aalbersberg","familyName":"Aalbersberg","givenName":"IJsbrand Jan"},{"@type":"Person","name":"Gabrielle Appleton","familyName":"Appleton","givenName":"Gabrielle"}],"datePublished":"2016-03-15","isPartOf":{"@type":"PublicationVolume","volumeNumber":"3","isPartOf":{"@type":"Periodical","name":"Scientific Data"}},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/sdata.2016.18"},{"@type":"PropertyValue","propertyID":"PMID","value":"26978244"},{"@type":"PropertyValue","propertyID":"PMCID","value":"PMC4792175"}],"url":"https://doi.org/10.1038/sdata.2016.18","sameAs":["https://pubmed.ncbi.nlm.nih.gov/26978244/","https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/"],"pagination":"160018","pageStart":"160018"}},{"@type":"ListItem","position":12,"item":{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook","author":[{"@type":"Organization","name":"WordPress.org"}],"url":"https://developer.wordpress.org/block-editor/","isPartOf":{"@type":"WebSite","name":"WordPress Developer Resources"}}}]} +] diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-schemamap.xml b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-schemamap.xml new file mode 100644 index 0000000..749bb42 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-schemamap.xml @@ -0,0 +1,2 @@ + +http://localhost:8890/wp-json/yoast/v1/schema-aggregator/get-schema/post2026-11-04T05:51:33Zdaily0.8structuredData/schema.org diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-yoast-aggregator.ndjson b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-yoast-aggregator.ndjson new file mode 100644 index 0000000..017b1be --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/3-yoast-aggregator.ndjson @@ -0,0 +1,4 @@ +{"@context":"https://schema.org","@type":"Article","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#article","isPartOf":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"author":{"name":"admin","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"headline":"What a bibliography tells machines","datePublished":"2026-11-04T05:51:33+00:00","mainEntityOfPage":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"wordCount":292,"commentCount":0,"inLanguage":"en-US","citation":[{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings"},{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship"},{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook"}],"description":"Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/"} +{"@context":"https://schema.org","@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/","url":"http://localhost:8890/what-a-bibliography-tells-machines/","name":"What a bibliography tells machines - Borges trace","isPartOf":{"@id":"http://localhost:8890/#website"},"datePublished":"2026-11-04T05:51:33+00:00","author":{"@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"WebSite","@id":"http://localhost:8890/#website","url":"http://localhost:8890/","name":"Borges trace","description":"","inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"Person","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","caption":"admin"},"sameAs":["http://localhost:8890"],"url":"http://localhost:8890/author/admin/"} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4a-nlweb-crawl-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4a-nlweb-crawl-docs.json new file mode 100644 index 0000000..12a4c52 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4a-nlweb-crawl-docs.json @@ -0,0 +1,107 @@ +[ + { + "id": "3489892085289535196", + "schema_json": [ + { + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http://localhost:8890/what-a-bibliography-tells-machines/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ] + }, + { + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + } + ], + "url": "http://localhost:8890/what-a-bibliography-tells-machines/", + "name": "What a bibliography tells machines", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4b-nlweb-aggregator-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4b-nlweb-aggregator-docs.json new file mode 100644 index 0000000..b7860a5 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/4b-nlweb-aggregator-docs.json @@ -0,0 +1,105 @@ +[ + { + "id": "-7582367710215725349", + "schema_json": { + "@context": "https://schema.org", + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ], + "description": "Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/" + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "name": "What a bibliography tells machines", + "site": "borges-trace" + }, + { + "id": "-4705254411604192740", + "schema_json": { + "@context": "https://schema.org", + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + }, + "url": "http://localhost:8890/author/admin/", + "name": "admin", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-mcp.json b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-mcp.json new file mode 100644 index 0000000..345e5e1 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-mcp.json @@ -0,0 +1 @@ +{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"message_type\":\"result\",\"results\":[{\"@type\":\"Article\",\"url\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\",\"name\":\"What a bibliography tells machines\",\"site\":\"localhost\",\"siteUrl\":\"localhost\",\"score\":90,\"description\":\"stub ranking\",\"grounding\":{\"schema_object\":{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"datePublished\":\"2026-11-04T05:51:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}]}}}],\"debug\":[{\"step\":\"Decontextualization\",\"raw_query\":\"NumPy\",\"decontextualized_query\":\"NumPy\",\"was_changed\":false},{\"step\":\"Query Fanout\",\"enabled\":false,\"message\":\"Query fanout disabled in settings\"},{\"step\":\"Retrieval\",\"mode\":\"single\",\"query\":\"NumPy\",\"max_results\":20,\"items_found\":1},{\"step\":\"Ranking\",\"items_before\":1,\"items_after\":1,\"top_score\":90}]}"}],"isError":false}} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-ranking-prompts.jsonl b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-ranking-prompts.jsonl new file mode 100644 index 0000000..8d4087a --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/5-nlweb-wp-ranking-prompts.jsonl @@ -0,0 +1 @@ +{"model":"stub","max_tokens":512,"system":"You are a helpful assistant. Respond ONLY with valid JSON matching this schema: {\"score\":\"integer between 0 and 100\",\"description\":\"short description of the item\"}","messages":[{"role":"user","content":"Assign a score between 0 and 100 to the following item based on how relevant it is to the user's question. Use your knowledge from other sources, about the item, to make a judgement. If the score is above 50, provide a short description of the item highlighting the relevance to the user's question, without mentioning the user's question. If the score is below 75, in the description, include the reason why it is still relevant. The description you generate should be in the same language as the item's description.\n\nThe user's question is: \"NumPy\". The item's description in schema.org format is \"{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}]}\"."}]} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/survival.json b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/survival.json new file mode 100644 index 0000000..27469cf --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/main-as-is/survival.json @@ -0,0 +1,1108 @@ +{ + "1 page HTML (all JSON-LD)": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "2 Yoast graph only": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "3 Yoast aggregator feed": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4a NLWeb index, crawled page": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4b NLWeb index, aggregator feed": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5 NLWeb WP plugin, MCP answer": { + "harris2020": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "lecun2015": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "wilkinson2016": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "knuth1984": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "bernerslee2001": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "maldacena1998": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "vaswani2017": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": false, + "isbn": null, + "publisher": false, + "_present": false + }, + "devlin2019": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": false, + "isbn": null, + "publisher": false, + "_present": false + }, + "cormen2009": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": false + }, + "borges1962": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": false + }, + "borges1962babel": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": false + }, + "wporg-handbook": { + "title": false, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": false + } + }, + "5p NLWeb WP plugin, ranking prompt (4,000-char cut)": { + "harris2020": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "lecun2015": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "wilkinson2016": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "knuth1984": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "bernerslee2001": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "maldacena1998": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "vaswani2017": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": false, + "isbn": null, + "publisher": false, + "_present": false + }, + "devlin2019": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": false, + "isbn": null, + "publisher": false, + "_present": false + }, + "cormen2009": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": false + }, + "borges1962": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": false + }, + "borges1962babel": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": false + }, + "wporg-handbook": { + "title": false, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": false + } + } +} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/1-page-json-ld.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/1-page-json-ld.json new file mode 100644 index 0000000..52a61cc --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/1-page-json-ld.json @@ -0,0 +1,179 @@ +[ +{ + "@context": "https:\/\/schema.org", + "@graph": [ + { + "@type": "Article", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#article", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "author": { + "name": "admin", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "mainEntityOfPage": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ] + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "url": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "name": "What a bibliography tells machines - Borges trace", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/#website" + }, + "datePublished": "2026-11-04T05:51:33+00:00", + "author": { + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "breadcrumb": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb" + }, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "ReadAction", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + ] + } + ] + }, + { + "@type": "BreadcrumbList", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb", + "itemListElement": [ + { + "@type": "ListItem", + "position": 1, + "name": "Home", + "item": "http:\/\/localhost:8890\/" + }, + { + "@type": "ListItem", + "position": 2, + "name": "What a bibliography tells machines" + } + ] + }, + { + "@type": "WebSite", + "@id": "http:\/\/localhost:8890\/#website", + "url": "http:\/\/localhost:8890\/", + "name": "Borges trace", + "description": "", + "potentialAction": [ + { + "@type": "SearchAction", + "target": { + "@type": "EntryPoint", + "urlTemplate": "http:\/\/localhost:8890\/?s={search_term_string}" + }, + "query-input": { + "@type": "PropertyValueSpecification", + "valueRequired": true, + "valueName": "search_term_string" + } + } + ], + "inLanguage": "en-US" + }, + { + "@type": "Person", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": { + "@type": "ImageObject", + "inLanguage": "en-US", + "@id": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "url": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "contentUrl": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "caption": "admin" + }, + "sameAs": [ + "http:\/\/localhost:8890" + ], + "url": "http:\/\/localhost:8890\/author\/admin\/" + } + ] + }, +{"@context":"https://schema.org","@type":"ItemList","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#bibliography-markup-value","numberOfItems":12,"itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web","author":[{"@type":"Person","name":"Tim Berners-Lee","familyName":"Berners-Lee","givenName":"Tim"},{"@type":"Person","name":"James Hendler","familyName":"Hendler","givenName":"James"},{"@type":"Person","name":"Ora Lassila","familyName":"Lassila","givenName":"Ora"}],"datePublished":"2001-05","identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/scientificamerican0501-34"},"url":"https://doi.org/10.1038/scientificamerican0501-34","isPartOf":{"@type":"PublicationIssue","issueNumber":"5","isPartOf":{"@type":"PublicationVolume","volumeNumber":"284","isPartOf":{"@type":"Periodical","name":"Scientific American"}}},"pagination":"34-43","pageStart":"34","pageEnd":"43"}},{"@type":"ListItem","position":2,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"isbn":"9780811200127","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780811200127"},"editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":3,"item":{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","isPartOf":{"@type":"Book","name":"Labyrinths: Selected stories and other writings"},"publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"pagination":"51-58","pageStart":"51","pageEnd":"58","editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}],"translator":[{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":4,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms","author":[{"@type":"Person","name":"Thomas H. Cormen","familyName":"Cormen","givenName":"Thomas H."},{"@type":"Person","name":"Charles E. Leiserson","familyName":"Leiserson","givenName":"Charles E."},{"@type":"Person","name":"Ronald L. Rivest","familyName":"Rivest","givenName":"Ronald L."},{"@type":"Person","name":"Clifford Stein","familyName":"Stein","givenName":"Clifford"}],"datePublished":"2009","publisher":{"@type":"Organization","name":"MIT Press","location":"Cambridge, MA"},"isbn":"9780262033848","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780262033848"},"bookEdition":"3"}},{"@type":"ListItem","position":5,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding","author":[{"@type":"Person","name":"Jacob Devlin","familyName":"Devlin","givenName":"Jacob"},{"@type":"Person","name":"Ming-Wei Chang","familyName":"Chang","givenName":"Ming-Wei"},{"@type":"Person","name":"Kenton Lee","familyName":"Lee","givenName":"Kenton"},{"@type":"Person","name":"Kristina Toutanova","familyName":"Toutanova","givenName":"Kristina"}],"datePublished":"2019","isPartOf":{"@type":"Book","name":"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies"},"publisher":{"@type":"Organization","name":"Association for Computational Linguistics"},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.18653/v1/N19-1423"},"url":"https://doi.org/10.18653/v1/N19-1423","pagination":"4171-4186","pageStart":"4171","pageEnd":"4186"}},{"@type":"ListItem","position":6,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy","author":[{"@type":"Person","name":"Charles R. Harris","familyName":"Harris","givenName":"Charles R."},{"@type":"Person","name":"K. Jarrod Millman","familyName":"Millman","givenName":"K. Jarrod"},{"@type":"Person","name":"Stéfan J. van der Walt","familyName":"van der Walt","givenName":"Stéfan J."},{"@type":"Person","name":"Ralf Gommers","familyName":"Gommers","givenName":"Ralf"}],"datePublished":"2020-09-16","isPartOf":{"@type":"PublicationIssue","issueNumber":"7825","isPartOf":{"@type":"PublicationVolume","volumeNumber":"585","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/s41586-020-2649-2"},"url":"https://doi.org/10.1038/s41586-020-2649-2","pagination":"357-362","pageStart":"357","pageEnd":"362"}},{"@type":"ListItem","position":7,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming","author":[{"@type":"Person","name":"Donald E. Knuth","familyName":"Knuth","givenName":"Donald E."}],"datePublished":"1984","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"27","isPartOf":{"@type":"Periodical","name":"The Computer Journal"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1093/comjnl/27.2.97"},"url":"https://doi.org/10.1093/comjnl/27.2.97","pagination":"97-111","pageStart":"97","pageEnd":"111"}},{"@type":"ListItem","position":8,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning","author":[{"@type":"Person","name":"Yann LeCun","familyName":"LeCun","givenName":"Yann"},{"@type":"Person","name":"Yoshua Bengio","familyName":"Bengio","givenName":"Yoshua"},{"@type":"Person","name":"Geoffrey Hinton","familyName":"Hinton","givenName":"Geoffrey"}],"datePublished":"2015-05-28","isPartOf":{"@type":"PublicationIssue","issueNumber":"7553","isPartOf":{"@type":"PublicationVolume","volumeNumber":"521","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/nature14539"},"url":"https://doi.org/10.1038/nature14539","pagination":"436-444","pageStart":"436","pageEnd":"444"}},{"@type":"ListItem","position":9,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity","author":[{"@type":"Person","name":"Juan Maldacena","familyName":"Maldacena","givenName":"Juan"}],"datePublished":"1998","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"2","isPartOf":{"@type":"Periodical","name":"Advances in Theoretical and Mathematical Physics"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.4310/ATMP.1998.v2.n2.a1"},"url":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","pagination":"231-252","pageStart":"231","pageEnd":"252"}},{"@type":"ListItem","position":10,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need","author":[{"@type":"Person","name":"Ashish Vaswani","familyName":"Vaswani","givenName":"Ashish"},{"@type":"Person","name":"Noam Shazeer","familyName":"Shazeer","givenName":"Noam"},{"@type":"Person","name":"Niki Parmar","familyName":"Parmar","givenName":"Niki"},{"@type":"Person","name":"Jakob Uszkoreit","familyName":"Uszkoreit","givenName":"Jakob"}],"datePublished":"2017-06-12","publisher":{"@type":"Organization","name":"arXiv"},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.48550/arXiv.1706.03762"},{"@type":"PropertyValue","propertyID":"arXiv","value":"1706.03762"}],"url":"https://doi.org/10.48550/arXiv.1706.03762","sameAs":"https://arxiv.org/abs/1706.03762"}},{"@type":"ListItem","position":11,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship","author":[{"@type":"Person","name":"Mark D. Wilkinson","familyName":"Wilkinson","givenName":"Mark D."},{"@type":"Person","name":"Michel Dumontier","familyName":"Dumontier","givenName":"Michel"},{"@type":"Person","name":"IJsbrand Jan Aalbersberg","familyName":"Aalbersberg","givenName":"IJsbrand Jan"},{"@type":"Person","name":"Gabrielle Appleton","familyName":"Appleton","givenName":"Gabrielle"}],"datePublished":"2016-03-15","isPartOf":{"@type":"PublicationVolume","volumeNumber":"3","isPartOf":{"@type":"Periodical","name":"Scientific Data"}},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/sdata.2016.18"},{"@type":"PropertyValue","propertyID":"PMID","value":"26978244"},{"@type":"PropertyValue","propertyID":"PMCID","value":"PMC4792175"}],"url":"https://doi.org/10.1038/sdata.2016.18","sameAs":["https://pubmed.ncbi.nlm.nih.gov/26978244/","https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/"],"pagination":"160018","pageStart":"160018"}},{"@type":"ListItem","position":12,"item":{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook","author":[{"@type":"Organization","name":"WordPress.org"}],"url":"https://developer.wordpress.org/block-editor/","isPartOf":{"@type":"WebSite","name":"WordPress Developer Resources"}}}]} +] diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-schemamap.xml b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-schemamap.xml new file mode 100644 index 0000000..749bb42 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-schemamap.xml @@ -0,0 +1,2 @@ + +http://localhost:8890/wp-json/yoast/v1/schema-aggregator/get-schema/post2026-11-04T05:51:33Zdaily0.8structuredData/schema.org diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-yoast-aggregator.ndjson b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-yoast-aggregator.ndjson new file mode 100644 index 0000000..017b1be --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/3-yoast-aggregator.ndjson @@ -0,0 +1,4 @@ +{"@context":"https://schema.org","@type":"Article","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#article","isPartOf":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"author":{"name":"admin","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"headline":"What a bibliography tells machines","datePublished":"2026-11-04T05:51:33+00:00","mainEntityOfPage":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"wordCount":292,"commentCount":0,"inLanguage":"en-US","citation":[{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings"},{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship"},{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook"}],"description":"Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/"} +{"@context":"https://schema.org","@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/","url":"http://localhost:8890/what-a-bibliography-tells-machines/","name":"What a bibliography tells machines - Borges trace","isPartOf":{"@id":"http://localhost:8890/#website"},"datePublished":"2026-11-04T05:51:33+00:00","author":{"@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"WebSite","@id":"http://localhost:8890/#website","url":"http://localhost:8890/","name":"Borges trace","description":"","inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"Person","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","caption":"admin"},"sameAs":["http://localhost:8890"],"url":"http://localhost:8890/author/admin/"} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4a-nlweb-crawl-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4a-nlweb-crawl-docs.json new file mode 100644 index 0000000..18cd901 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4a-nlweb-crawl-docs.json @@ -0,0 +1,107 @@ +[ + { + "id": "8294558557010829104", + "schema_json": [ + { + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http://localhost:8890/what-a-bibliography-tells-machines/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ] + }, + { + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + } + ], + "url": "http://localhost:8890/what-a-bibliography-tells-machines/", + "name": "What a bibliography tells machines", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4b-nlweb-aggregator-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4b-nlweb-aggregator-docs.json new file mode 100644 index 0000000..1780a62 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/4b-nlweb-aggregator-docs.json @@ -0,0 +1,105 @@ +[ + { + "id": "-599136800200259516", + "schema_json": { + "@context": "https://schema.org", + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ], + "description": "Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/" + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "name": "What a bibliography tells machines", + "site": "borges-trace" + }, + { + "id": "-7038526358349045796", + "schema_json": { + "@context": "https://schema.org", + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + }, + "url": "http://localhost:8890/author/admin/", + "name": "admin", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-mcp.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-mcp.json new file mode 100644 index 0000000..3433f87 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-mcp.json @@ -0,0 +1 @@ +{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"message_type\":\"result\",\"results\":[{\"@type\":\"Article\",\"url\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\",\"name\":\"What a bibliography tells machines\",\"site\":\"localhost\",\"siteUrl\":\"localhost\",\"score\":90,\"description\":\"stub ranking\",\"grounding\":{\"schema_object\":{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"datePublished\":\"2026-11-04T05:51:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}],\"citation\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"name\":\"The Semantic Web\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962\",\"name\":\"Labyrinths: Selected stories and other writings\"},{\"@type\":\"Chapter\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962babel\",\"name\":\"The library of Babel\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-cormen2009\",\"name\":\"Introduction to algorithms\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"name\":\"BERT: Pre-training of deep bidirectional transformers for language understanding\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/s41586-020-2649-2\",\"name\":\"Array programming with NumPy\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1093\\\/comjnl\\\/27.2.97\",\"name\":\"Literate programming\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/nature14539\",\"name\":\"Deep learning\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.4310\\\/ATMP.1998.v2.n2.a1\",\"name\":\"The large N limit of superconformal field theories and supergravity\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.48550\\\/arXiv.1706.03762\",\"name\":\"Attention is all you need\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/sdata.2016.18\",\"name\":\"The FAIR Guiding Principles for scientific data management and stewardship\"},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-wporg-handbook\",\"name\":\"Block Editor Handbook\"}]}}}],\"debug\":[{\"step\":\"Decontextualization\",\"raw_query\":\"NumPy\",\"decontextualized_query\":\"NumPy\",\"was_changed\":false},{\"step\":\"Query Fanout\",\"enabled\":false,\"message\":\"Query fanout disabled in settings\"},{\"step\":\"Retrieval\",\"mode\":\"single\",\"query\":\"NumPy\",\"max_results\":20,\"items_found\":1},{\"step\":\"Ranking\",\"items_before\":1,\"items_after\":1,\"top_score\":90}]}"}],"isError":false}} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-ranking-prompts.jsonl b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-ranking-prompts.jsonl new file mode 100644 index 0000000..fae9fc8 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/5-nlweb-wp-ranking-prompts.jsonl @@ -0,0 +1 @@ +{"model":"stub","max_tokens":512,"system":"You are a helpful assistant. Respond ONLY with valid JSON matching this schema: {\"score\":\"integer between 0 and 100\",\"description\":\"short description of the item\"}","messages":[{"role":"user","content":"Assign a score between 0 and 100 to the following item based on how relevant it is to the user's question. Use your knowledge from other sources, about the item, to make a judgement. If the score is above 50, provide a short description of the item highlighting the relevance to the user's question, without mentioning the user's question. If the score is below 75, in the description, include the reason why it is still relevant. The description you generate should be in the same language as the item's description.\n\nThe user's question is: \"NumPy\". The item's description in schema.org format is \"{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}],\"citation\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"name\":\"The Semantic Web\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962\",\"name\":\"Labyrinths: Selected stories and other writings\"},{\"@type\":\"Chapter\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962babel\",\"name\":\"The library of Babel\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-cormen2009\",\"name\":\"Introduction to algorithms\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"name\":\"BERT: Pre-training of deep bidirectional transformers for language understanding\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/s41586-020-2649-2\",\"name\":\"Array programming with NumPy\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1093\\\/comjnl\\\/27.2.97\",\"name\":\"Literate programming\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/nature14539\",\"name\":\"Deep learning\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.4310\\\/ATMP.1998.v2.n2.a1\",\"name\":\"The large N limit of superconformal field theories and supergravity\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.48550\\\/arXiv.1706.03762\",\"name\":\"Attention is all you need\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/sdata.2016.18\",\"name\":\"The FAIR Guiding Principles for scientific data management and stewardship\"},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-wporg-handbook\",\"name\":\"Block Editor Handbook\"}]}\"."}]} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/survival.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/survival.json new file mode 100644 index 0000000..419ec4f --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-as-is/survival.json @@ -0,0 +1,1108 @@ +{ + "1 page HTML (all JSON-LD)": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "2 Yoast graph only": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "3 Yoast aggregator feed": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4a NLWeb index, crawled page": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4b NLWeb index, aggregator feed": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5 NLWeb WP plugin, MCP answer": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5p NLWeb WP plugin, ranking prompt (4,000-char cut)": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + } +} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/1-page-json-ld.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/1-page-json-ld.json new file mode 100644 index 0000000..90a8108 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/1-page-json-ld.json @@ -0,0 +1,658 @@ +[ +{ + "@context": "https:\/\/schema.org", + "@graph": [ + { + "@type": "Article", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#article", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "author": { + "name": "admin", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "mainEntityOfPage": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "@context": "https:\/\/schema.org", + "name": "The Semantic Web", + "author": [ + { + "@type": "Person", + "name": "Tim Berners-Lee", + "familyName": "Berners-Lee", + "givenName": "Tim" + }, + { + "@type": "Person", + "name": "James Hendler", + "familyName": "Hendler", + "givenName": "James" + }, + { + "@type": "Person", + "name": "Ora Lassila", + "familyName": "Lassila", + "givenName": "Ora" + } + ], + "datePublished": "2001-05", + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/scientificamerican0501-34" + }, + "url": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "5", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "284", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific American" + } + } + }, + "pagination": "34-43", + "pageStart": "34", + "pageEnd": "43" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962", + "@context": "https:\/\/schema.org", + "name": "Labyrinths: Selected stories and other writings", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "isbn": "9780811200127", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780811200127" + }, + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Chapter", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962babel", + "@context": "https:\/\/schema.org", + "name": "The library of Babel", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isPartOf": { + "@type": "Book", + "name": "Labyrinths: Selected stories and other writings" + }, + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "pagination": "51-58", + "pageStart": "51", + "pageEnd": "58", + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ], + "translator": [ + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-cormen2009", + "@context": "https:\/\/schema.org", + "name": "Introduction to algorithms", + "author": [ + { + "@type": "Person", + "name": "Thomas H. Cormen", + "familyName": "Cormen", + "givenName": "Thomas H." + }, + { + "@type": "Person", + "name": "Charles E. Leiserson", + "familyName": "Leiserson", + "givenName": "Charles E." + }, + { + "@type": "Person", + "name": "Ronald L. Rivest", + "familyName": "Rivest", + "givenName": "Ronald L." + }, + { + "@type": "Person", + "name": "Clifford Stein", + "familyName": "Stein", + "givenName": "Clifford" + } + ], + "datePublished": "2009", + "publisher": { + "@type": "Organization", + "name": "MIT Press", + "location": "Cambridge, MA" + }, + "isbn": "9780262033848", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780262033848" + }, + "bookEdition": "3" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "@context": "https:\/\/schema.org", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "author": [ + { + "@type": "Person", + "name": "Jacob Devlin", + "familyName": "Devlin", + "givenName": "Jacob" + }, + { + "@type": "Person", + "name": "Ming-Wei Chang", + "familyName": "Chang", + "givenName": "Ming-Wei" + }, + { + "@type": "Person", + "name": "Kenton Lee", + "familyName": "Lee", + "givenName": "Kenton" + }, + { + "@type": "Person", + "name": "Kristina Toutanova", + "familyName": "Toutanova", + "givenName": "Kristina" + } + ], + "datePublished": "2019", + "isPartOf": { + "@type": "Book", + "name": "Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies" + }, + "publisher": { + "@type": "Organization", + "name": "Association for Computational Linguistics" + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.18653\/v1\/N19-1423" + }, + "url": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "pagination": "4171-4186", + "pageStart": "4171", + "pageEnd": "4186" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "@context": "https:\/\/schema.org", + "name": "Array programming with NumPy", + "author": [ + { + "@type": "Person", + "name": "Charles R. Harris", + "familyName": "Harris", + "givenName": "Charles R." + }, + { + "@type": "Person", + "name": "K. Jarrod Millman", + "familyName": "Millman", + "givenName": "K. Jarrod" + }, + { + "@type": "Person", + "name": "Stéfan J. van der Walt", + "familyName": "van der Walt", + "givenName": "Stéfan J." + }, + { + "@type": "Person", + "name": "Ralf Gommers", + "familyName": "Gommers", + "givenName": "Ralf" + } + ], + "datePublished": "2020-09-16", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7825", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "585", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/s41586-020-2649-2" + }, + "url": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "pagination": "357-362", + "pageStart": "357", + "pageEnd": "362" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "@context": "https:\/\/schema.org", + "name": "Literate programming", + "author": [ + { + "@type": "Person", + "name": "Donald E. Knuth", + "familyName": "Knuth", + "givenName": "Donald E." + } + ], + "datePublished": "1984", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "27", + "isPartOf": { + "@type": "Periodical", + "name": "The Computer Journal" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1093\/comjnl\/27.2.97" + }, + "url": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "pagination": "97-111", + "pageStart": "97", + "pageEnd": "111" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/nature14539", + "@context": "https:\/\/schema.org", + "name": "Deep learning", + "author": [ + { + "@type": "Person", + "name": "Yann LeCun", + "familyName": "LeCun", + "givenName": "Yann" + }, + { + "@type": "Person", + "name": "Yoshua Bengio", + "familyName": "Bengio", + "givenName": "Yoshua" + }, + { + "@type": "Person", + "name": "Geoffrey Hinton", + "familyName": "Hinton", + "givenName": "Geoffrey" + } + ], + "datePublished": "2015-05-28", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7553", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "521", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/nature14539" + }, + "url": "https:\/\/doi.org\/10.1038\/nature14539", + "pagination": "436-444", + "pageStart": "436", + "pageEnd": "444" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "@context": "https:\/\/schema.org", + "name": "The large N limit of superconformal field theories and supergravity", + "author": [ + { + "@type": "Person", + "name": "Juan Maldacena", + "familyName": "Maldacena", + "givenName": "Juan" + } + ], + "datePublished": "1998", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "2", + "isPartOf": { + "@type": "Periodical", + "name": "Advances in Theoretical and Mathematical Physics" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.4310\/ATMP.1998.v2.n2.a1" + }, + "url": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "pagination": "231-252", + "pageStart": "231", + "pageEnd": "252" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "@context": "https:\/\/schema.org", + "name": "Attention is all you need", + "author": [ + { + "@type": "Person", + "name": "Ashish Vaswani", + "familyName": "Vaswani", + "givenName": "Ashish" + }, + { + "@type": "Person", + "name": "Noam Shazeer", + "familyName": "Shazeer", + "givenName": "Noam" + }, + { + "@type": "Person", + "name": "Niki Parmar", + "familyName": "Parmar", + "givenName": "Niki" + }, + { + "@type": "Person", + "name": "Jakob Uszkoreit", + "familyName": "Uszkoreit", + "givenName": "Jakob" + } + ], + "datePublished": "2017-06-12", + "publisher": { + "@type": "Organization", + "name": "arXiv" + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.48550\/arXiv.1706.03762" + }, + { + "@type": "PropertyValue", + "propertyID": "arXiv", + "value": "1706.03762" + } + ], + "url": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "sameAs": "https:\/\/arxiv.org\/abs\/1706.03762" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "@context": "https:\/\/schema.org", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "author": [ + { + "@type": "Person", + "name": "Mark D. Wilkinson", + "familyName": "Wilkinson", + "givenName": "Mark D." + }, + { + "@type": "Person", + "name": "Michel Dumontier", + "familyName": "Dumontier", + "givenName": "Michel" + }, + { + "@type": "Person", + "name": "IJsbrand Jan Aalbersberg", + "familyName": "Aalbersberg", + "givenName": "IJsbrand Jan" + }, + { + "@type": "Person", + "name": "Gabrielle Appleton", + "familyName": "Appleton", + "givenName": "Gabrielle" + } + ], + "datePublished": "2016-03-15", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "3", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific Data" + } + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/sdata.2016.18" + }, + { + "@type": "PropertyValue", + "propertyID": "PMID", + "value": "26978244" + }, + { + "@type": "PropertyValue", + "propertyID": "PMCID", + "value": "PMC4792175" + } + ], + "url": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "sameAs": [ + "https:\/\/pubmed.ncbi.nlm.nih.gov\/26978244\/", + "https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC4792175\/" + ], + "pagination": "160018", + "pageStart": "160018" + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-wporg-handbook", + "@context": "https:\/\/schema.org", + "name": "Block Editor Handbook", + "author": [ + { + "@type": "Organization", + "name": "WordPress.org" + } + ], + "url": "https:\/\/developer.wordpress.org\/block-editor\/", + "isPartOf": { + "@type": "WebSite", + "name": "WordPress Developer Resources" + } + } + ] + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "url": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "name": "What a bibliography tells machines - Borges trace", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/#website" + }, + "datePublished": "2026-11-04T05:51:33+00:00", + "author": { + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "breadcrumb": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb" + }, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "ReadAction", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + ] + } + ] + }, + { + "@type": "BreadcrumbList", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb", + "itemListElement": [ + { + "@type": "ListItem", + "position": 1, + "name": "Home", + "item": "http:\/\/localhost:8890\/" + }, + { + "@type": "ListItem", + "position": 2, + "name": "What a bibliography tells machines" + } + ] + }, + { + "@type": "WebSite", + "@id": "http:\/\/localhost:8890\/#website", + "url": "http:\/\/localhost:8890\/", + "name": "Borges trace", + "description": "", + "potentialAction": [ + { + "@type": "SearchAction", + "target": { + "@type": "EntryPoint", + "urlTemplate": "http:\/\/localhost:8890\/?s={search_term_string}" + }, + "query-input": { + "@type": "PropertyValueSpecification", + "valueRequired": true, + "valueName": "search_term_string" + } + } + ], + "inLanguage": "en-US" + }, + { + "@type": "Person", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": { + "@type": "ImageObject", + "inLanguage": "en-US", + "@id": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "url": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "contentUrl": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "caption": "admin" + }, + "sameAs": [ + "http:\/\/localhost:8890" + ], + "url": "http:\/\/localhost:8890\/author\/admin\/" + } + ] + }, +{"@context":"https://schema.org","@type":"ItemList","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#bibliography-markup-value","numberOfItems":12,"itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web","author":[{"@type":"Person","name":"Tim Berners-Lee","familyName":"Berners-Lee","givenName":"Tim"},{"@type":"Person","name":"James Hendler","familyName":"Hendler","givenName":"James"},{"@type":"Person","name":"Ora Lassila","familyName":"Lassila","givenName":"Ora"}],"datePublished":"2001-05","identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/scientificamerican0501-34"},"url":"https://doi.org/10.1038/scientificamerican0501-34","isPartOf":{"@type":"PublicationIssue","issueNumber":"5","isPartOf":{"@type":"PublicationVolume","volumeNumber":"284","isPartOf":{"@type":"Periodical","name":"Scientific American"}}},"pagination":"34-43","pageStart":"34","pageEnd":"43"}},{"@type":"ListItem","position":2,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"isbn":"9780811200127","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780811200127"},"editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":3,"item":{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","isPartOf":{"@type":"Book","name":"Labyrinths: Selected stories and other writings"},"publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"pagination":"51-58","pageStart":"51","pageEnd":"58","editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}],"translator":[{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":4,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms","author":[{"@type":"Person","name":"Thomas H. Cormen","familyName":"Cormen","givenName":"Thomas H."},{"@type":"Person","name":"Charles E. Leiserson","familyName":"Leiserson","givenName":"Charles E."},{"@type":"Person","name":"Ronald L. Rivest","familyName":"Rivest","givenName":"Ronald L."},{"@type":"Person","name":"Clifford Stein","familyName":"Stein","givenName":"Clifford"}],"datePublished":"2009","publisher":{"@type":"Organization","name":"MIT Press","location":"Cambridge, MA"},"isbn":"9780262033848","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780262033848"},"bookEdition":"3"}},{"@type":"ListItem","position":5,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding","author":[{"@type":"Person","name":"Jacob Devlin","familyName":"Devlin","givenName":"Jacob"},{"@type":"Person","name":"Ming-Wei Chang","familyName":"Chang","givenName":"Ming-Wei"},{"@type":"Person","name":"Kenton Lee","familyName":"Lee","givenName":"Kenton"},{"@type":"Person","name":"Kristina Toutanova","familyName":"Toutanova","givenName":"Kristina"}],"datePublished":"2019","isPartOf":{"@type":"Book","name":"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies"},"publisher":{"@type":"Organization","name":"Association for Computational Linguistics"},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.18653/v1/N19-1423"},"url":"https://doi.org/10.18653/v1/N19-1423","pagination":"4171-4186","pageStart":"4171","pageEnd":"4186"}},{"@type":"ListItem","position":6,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy","author":[{"@type":"Person","name":"Charles R. Harris","familyName":"Harris","givenName":"Charles R."},{"@type":"Person","name":"K. Jarrod Millman","familyName":"Millman","givenName":"K. Jarrod"},{"@type":"Person","name":"Stéfan J. van der Walt","familyName":"van der Walt","givenName":"Stéfan J."},{"@type":"Person","name":"Ralf Gommers","familyName":"Gommers","givenName":"Ralf"}],"datePublished":"2020-09-16","isPartOf":{"@type":"PublicationIssue","issueNumber":"7825","isPartOf":{"@type":"PublicationVolume","volumeNumber":"585","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/s41586-020-2649-2"},"url":"https://doi.org/10.1038/s41586-020-2649-2","pagination":"357-362","pageStart":"357","pageEnd":"362"}},{"@type":"ListItem","position":7,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming","author":[{"@type":"Person","name":"Donald E. Knuth","familyName":"Knuth","givenName":"Donald E."}],"datePublished":"1984","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"27","isPartOf":{"@type":"Periodical","name":"The Computer Journal"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1093/comjnl/27.2.97"},"url":"https://doi.org/10.1093/comjnl/27.2.97","pagination":"97-111","pageStart":"97","pageEnd":"111"}},{"@type":"ListItem","position":8,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning","author":[{"@type":"Person","name":"Yann LeCun","familyName":"LeCun","givenName":"Yann"},{"@type":"Person","name":"Yoshua Bengio","familyName":"Bengio","givenName":"Yoshua"},{"@type":"Person","name":"Geoffrey Hinton","familyName":"Hinton","givenName":"Geoffrey"}],"datePublished":"2015-05-28","isPartOf":{"@type":"PublicationIssue","issueNumber":"7553","isPartOf":{"@type":"PublicationVolume","volumeNumber":"521","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/nature14539"},"url":"https://doi.org/10.1038/nature14539","pagination":"436-444","pageStart":"436","pageEnd":"444"}},{"@type":"ListItem","position":9,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity","author":[{"@type":"Person","name":"Juan Maldacena","familyName":"Maldacena","givenName":"Juan"}],"datePublished":"1998","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"2","isPartOf":{"@type":"Periodical","name":"Advances in Theoretical and Mathematical Physics"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.4310/ATMP.1998.v2.n2.a1"},"url":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","pagination":"231-252","pageStart":"231","pageEnd":"252"}},{"@type":"ListItem","position":10,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need","author":[{"@type":"Person","name":"Ashish Vaswani","familyName":"Vaswani","givenName":"Ashish"},{"@type":"Person","name":"Noam Shazeer","familyName":"Shazeer","givenName":"Noam"},{"@type":"Person","name":"Niki Parmar","familyName":"Parmar","givenName":"Niki"},{"@type":"Person","name":"Jakob Uszkoreit","familyName":"Uszkoreit","givenName":"Jakob"}],"datePublished":"2017-06-12","publisher":{"@type":"Organization","name":"arXiv"},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.48550/arXiv.1706.03762"},{"@type":"PropertyValue","propertyID":"arXiv","value":"1706.03762"}],"url":"https://doi.org/10.48550/arXiv.1706.03762","sameAs":"https://arxiv.org/abs/1706.03762"}},{"@type":"ListItem","position":11,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship","author":[{"@type":"Person","name":"Mark D. Wilkinson","familyName":"Wilkinson","givenName":"Mark D."},{"@type":"Person","name":"Michel Dumontier","familyName":"Dumontier","givenName":"Michel"},{"@type":"Person","name":"IJsbrand Jan Aalbersberg","familyName":"Aalbersberg","givenName":"IJsbrand Jan"},{"@type":"Person","name":"Gabrielle Appleton","familyName":"Appleton","givenName":"Gabrielle"}],"datePublished":"2016-03-15","isPartOf":{"@type":"PublicationVolume","volumeNumber":"3","isPartOf":{"@type":"Periodical","name":"Scientific Data"}},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/sdata.2016.18"},{"@type":"PropertyValue","propertyID":"PMID","value":"26978244"},{"@type":"PropertyValue","propertyID":"PMCID","value":"PMC4792175"}],"url":"https://doi.org/10.1038/sdata.2016.18","sameAs":["https://pubmed.ncbi.nlm.nih.gov/26978244/","https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/"],"pagination":"160018","pageStart":"160018"}},{"@type":"ListItem","position":12,"item":{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook","author":[{"@type":"Organization","name":"WordPress.org"}],"url":"https://developer.wordpress.org/block-editor/","isPartOf":{"@type":"WebSite","name":"WordPress Developer Resources"}}}]} +] diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-schemamap.xml b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-schemamap.xml new file mode 100644 index 0000000..749bb42 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-schemamap.xml @@ -0,0 +1,2 @@ + +http://localhost:8890/wp-json/yoast/v1/schema-aggregator/get-schema/post2026-11-04T05:51:33Zdaily0.8structuredData/schema.org diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-yoast-aggregator.ndjson b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-yoast-aggregator.ndjson new file mode 100644 index 0000000..26e568b --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/3-yoast-aggregator.ndjson @@ -0,0 +1,4 @@ +{"@context":"https://schema.org","@type":"Article","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#article","isPartOf":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"author":{"name":"admin","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"headline":"What a bibliography tells machines","datePublished":"2026-11-04T05:51:33+00:00","mainEntityOfPage":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"wordCount":292,"commentCount":0,"inLanguage":"en-US","citation":[{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","@context":"https://schema.org","name":"The Semantic Web","author":[{"@type":"Person","name":"Tim Berners-Lee","familyName":"Berners-Lee","givenName":"Tim"},{"@type":"Person","name":"James Hendler","familyName":"Hendler","givenName":"James"},{"@type":"Person","name":"Ora Lassila","familyName":"Lassila","givenName":"Ora"}],"datePublished":"2001-05","identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/scientificamerican0501-34"},"url":"https://doi.org/10.1038/scientificamerican0501-34","isPartOf":{"@type":"PublicationIssue","issueNumber":"5","isPartOf":{"@type":"PublicationVolume","volumeNumber":"284","isPartOf":{"@type":"Periodical","name":"Scientific American"}}},"pagination":"34-43","pageStart":"34","pageEnd":"43"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","@context":"https://schema.org","name":"Labyrinths: Selected stories and other writings","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"isbn":"9780811200127","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780811200127"},"editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]},{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","@context":"https://schema.org","name":"The library of Babel","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","isPartOf":{"@type":"Book","name":"Labyrinths: Selected stories and other writings"},"publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"pagination":"51-58","pageStart":"51","pageEnd":"58","editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}],"translator":[{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","@context":"https://schema.org","name":"Introduction to algorithms","author":[{"@type":"Person","name":"Thomas H. Cormen","familyName":"Cormen","givenName":"Thomas H."},{"@type":"Person","name":"Charles E. Leiserson","familyName":"Leiserson","givenName":"Charles E."},{"@type":"Person","name":"Ronald L. Rivest","familyName":"Rivest","givenName":"Ronald L."},{"@type":"Person","name":"Clifford Stein","familyName":"Stein","givenName":"Clifford"}],"datePublished":"2009","publisher":{"@type":"Organization","name":"MIT Press","location":"Cambridge, MA"},"isbn":"9780262033848","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780262033848"},"bookEdition":"3"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","@context":"https://schema.org","name":"BERT: Pre-training of deep bidirectional transformers for language understanding","author":[{"@type":"Person","name":"Jacob Devlin","familyName":"Devlin","givenName":"Jacob"},{"@type":"Person","name":"Ming-Wei Chang","familyName":"Chang","givenName":"Ming-Wei"},{"@type":"Person","name":"Kenton Lee","familyName":"Lee","givenName":"Kenton"},{"@type":"Person","name":"Kristina Toutanova","familyName":"Toutanova","givenName":"Kristina"}],"datePublished":"2019","isPartOf":{"@type":"Book","name":"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies"},"publisher":{"@type":"Organization","name":"Association for Computational Linguistics"},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.18653/v1/N19-1423"},"url":"https://doi.org/10.18653/v1/N19-1423","pagination":"4171-4186","pageStart":"4171","pageEnd":"4186"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","@context":"https://schema.org","name":"Array programming with NumPy","author":[{"@type":"Person","name":"Charles R. Harris","familyName":"Harris","givenName":"Charles R."},{"@type":"Person","name":"K. Jarrod Millman","familyName":"Millman","givenName":"K. Jarrod"},{"@type":"Person","name":"Stéfan J. van der Walt","familyName":"van der Walt","givenName":"Stéfan J."},{"@type":"Person","name":"Ralf Gommers","familyName":"Gommers","givenName":"Ralf"}],"datePublished":"2020-09-16","isPartOf":{"@type":"PublicationIssue","issueNumber":"7825","isPartOf":{"@type":"PublicationVolume","volumeNumber":"585","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/s41586-020-2649-2"},"url":"https://doi.org/10.1038/s41586-020-2649-2","pagination":"357-362","pageStart":"357","pageEnd":"362"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","@context":"https://schema.org","name":"Literate programming","author":[{"@type":"Person","name":"Donald E. Knuth","familyName":"Knuth","givenName":"Donald E."}],"datePublished":"1984","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"27","isPartOf":{"@type":"Periodical","name":"The Computer Journal"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1093/comjnl/27.2.97"},"url":"https://doi.org/10.1093/comjnl/27.2.97","pagination":"97-111","pageStart":"97","pageEnd":"111"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","@context":"https://schema.org","name":"Deep learning","author":[{"@type":"Person","name":"Yann LeCun","familyName":"LeCun","givenName":"Yann"},{"@type":"Person","name":"Yoshua Bengio","familyName":"Bengio","givenName":"Yoshua"},{"@type":"Person","name":"Geoffrey Hinton","familyName":"Hinton","givenName":"Geoffrey"}],"datePublished":"2015-05-28","isPartOf":{"@type":"PublicationIssue","issueNumber":"7553","isPartOf":{"@type":"PublicationVolume","volumeNumber":"521","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/nature14539"},"url":"https://doi.org/10.1038/nature14539","pagination":"436-444","pageStart":"436","pageEnd":"444"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","@context":"https://schema.org","name":"The large N limit of superconformal field theories and supergravity","author":[{"@type":"Person","name":"Juan Maldacena","familyName":"Maldacena","givenName":"Juan"}],"datePublished":"1998","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"2","isPartOf":{"@type":"Periodical","name":"Advances in Theoretical and Mathematical Physics"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.4310/ATMP.1998.v2.n2.a1"},"url":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","pagination":"231-252","pageStart":"231","pageEnd":"252"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","@context":"https://schema.org","name":"Attention is all you need","author":[{"@type":"Person","name":"Ashish Vaswani","familyName":"Vaswani","givenName":"Ashish"},{"@type":"Person","name":"Noam Shazeer","familyName":"Shazeer","givenName":"Noam"},{"@type":"Person","name":"Niki Parmar","familyName":"Parmar","givenName":"Niki"},{"@type":"Person","name":"Jakob Uszkoreit","familyName":"Uszkoreit","givenName":"Jakob"}],"datePublished":"2017-06-12","publisher":{"@type":"Organization","name":"arXiv"},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.48550/arXiv.1706.03762"},{"@type":"PropertyValue","propertyID":"arXiv","value":"1706.03762"}],"url":"https://doi.org/10.48550/arXiv.1706.03762","sameAs":"https://arxiv.org/abs/1706.03762"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","@context":"https://schema.org","name":"The FAIR Guiding Principles for scientific data management and stewardship","author":[{"@type":"Person","name":"Mark D. Wilkinson","familyName":"Wilkinson","givenName":"Mark D."},{"@type":"Person","name":"Michel Dumontier","familyName":"Dumontier","givenName":"Michel"},{"@type":"Person","name":"IJsbrand Jan Aalbersberg","familyName":"Aalbersberg","givenName":"IJsbrand Jan"},{"@type":"Person","name":"Gabrielle Appleton","familyName":"Appleton","givenName":"Gabrielle"}],"datePublished":"2016-03-15","isPartOf":{"@type":"PublicationVolume","volumeNumber":"3","isPartOf":{"@type":"Periodical","name":"Scientific Data"}},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/sdata.2016.18"},{"@type":"PropertyValue","propertyID":"PMID","value":"26978244"},{"@type":"PropertyValue","propertyID":"PMCID","value":"PMC4792175"}],"url":"https://doi.org/10.1038/sdata.2016.18","sameAs":["https://pubmed.ncbi.nlm.nih.gov/26978244/","https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/"],"pagination":"160018","pageStart":"160018"},{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","@context":"https://schema.org","name":"Block Editor Handbook","author":[{"@type":"Organization","name":"WordPress.org"}],"url":"https://developer.wordpress.org/block-editor/","isPartOf":{"@type":"WebSite","name":"WordPress Developer Resources"}}],"description":"Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/"} +{"@context":"https://schema.org","@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/","url":"http://localhost:8890/what-a-bibliography-tells-machines/","name":"What a bibliography tells machines - Borges trace","isPartOf":{"@id":"http://localhost:8890/#website"},"datePublished":"2026-11-04T05:51:33+00:00","author":{"@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"WebSite","@id":"http://localhost:8890/#website","url":"http://localhost:8890/","name":"Borges trace","description":"","inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"Person","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","caption":"admin"},"sameAs":["http://localhost:8890"],"url":"http://localhost:8890/author/admin/"} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4a-nlweb-crawl-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4a-nlweb-crawl-docs.json new file mode 100644 index 0000000..b008fd6 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4a-nlweb-crawl-docs.json @@ -0,0 +1,586 @@ +[ + { + "id": "3403279947747798212", + "schema_json": [ + { + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http://localhost:8890/what-a-bibliography-tells-machines/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "@context": "https://schema.org", + "name": "The Semantic Web", + "author": [ + { + "@type": "Person", + "name": "Tim Berners-Lee", + "familyName": "Berners-Lee", + "givenName": "Tim" + }, + { + "@type": "Person", + "name": "James Hendler", + "familyName": "Hendler", + "givenName": "James" + }, + { + "@type": "Person", + "name": "Ora Lassila", + "familyName": "Lassila", + "givenName": "Ora" + } + ], + "datePublished": "2001-05", + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/scientificamerican0501-34" + }, + "url": "https://doi.org/10.1038/scientificamerican0501-34", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "5", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "284", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific American" + } + } + }, + "pagination": "34-43", + "pageStart": "34", + "pageEnd": "43" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "@context": "https://schema.org", + "name": "Labyrinths: Selected stories and other writings", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "isbn": "9780811200127", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780811200127" + }, + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "@context": "https://schema.org", + "name": "The library of Babel", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isPartOf": { + "@type": "Book", + "name": "Labyrinths: Selected stories and other writings" + }, + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "pagination": "51-58", + "pageStart": "51", + "pageEnd": "58", + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ], + "translator": [ + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "@context": "https://schema.org", + "name": "Introduction to algorithms", + "author": [ + { + "@type": "Person", + "name": "Thomas H. Cormen", + "familyName": "Cormen", + "givenName": "Thomas H." + }, + { + "@type": "Person", + "name": "Charles E. Leiserson", + "familyName": "Leiserson", + "givenName": "Charles E." + }, + { + "@type": "Person", + "name": "Ronald L. Rivest", + "familyName": "Rivest", + "givenName": "Ronald L." + }, + { + "@type": "Person", + "name": "Clifford Stein", + "familyName": "Stein", + "givenName": "Clifford" + } + ], + "datePublished": "2009", + "publisher": { + "@type": "Organization", + "name": "MIT Press", + "location": "Cambridge, MA" + }, + "isbn": "9780262033848", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780262033848" + }, + "bookEdition": "3" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "@context": "https://schema.org", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "author": [ + { + "@type": "Person", + "name": "Jacob Devlin", + "familyName": "Devlin", + "givenName": "Jacob" + }, + { + "@type": "Person", + "name": "Ming-Wei Chang", + "familyName": "Chang", + "givenName": "Ming-Wei" + }, + { + "@type": "Person", + "name": "Kenton Lee", + "familyName": "Lee", + "givenName": "Kenton" + }, + { + "@type": "Person", + "name": "Kristina Toutanova", + "familyName": "Toutanova", + "givenName": "Kristina" + } + ], + "datePublished": "2019", + "isPartOf": { + "@type": "Book", + "name": "Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies" + }, + "publisher": { + "@type": "Organization", + "name": "Association for Computational Linguistics" + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.18653/v1/N19-1423" + }, + "url": "https://doi.org/10.18653/v1/N19-1423", + "pagination": "4171-4186", + "pageStart": "4171", + "pageEnd": "4186" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "@context": "https://schema.org", + "name": "Array programming with NumPy", + "author": [ + { + "@type": "Person", + "name": "Charles R. Harris", + "familyName": "Harris", + "givenName": "Charles R." + }, + { + "@type": "Person", + "name": "K. Jarrod Millman", + "familyName": "Millman", + "givenName": "K. Jarrod" + }, + { + "@type": "Person", + "name": "Stéfan J. van der Walt", + "familyName": "van der Walt", + "givenName": "Stéfan J." + }, + { + "@type": "Person", + "name": "Ralf Gommers", + "familyName": "Gommers", + "givenName": "Ralf" + } + ], + "datePublished": "2020-09-16", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7825", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "585", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/s41586-020-2649-2" + }, + "url": "https://doi.org/10.1038/s41586-020-2649-2", + "pagination": "357-362", + "pageStart": "357", + "pageEnd": "362" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "@context": "https://schema.org", + "name": "Literate programming", + "author": [ + { + "@type": "Person", + "name": "Donald E. Knuth", + "familyName": "Knuth", + "givenName": "Donald E." + } + ], + "datePublished": "1984", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "27", + "isPartOf": { + "@type": "Periodical", + "name": "The Computer Journal" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1093/comjnl/27.2.97" + }, + "url": "https://doi.org/10.1093/comjnl/27.2.97", + "pagination": "97-111", + "pageStart": "97", + "pageEnd": "111" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "@context": "https://schema.org", + "name": "Deep learning", + "author": [ + { + "@type": "Person", + "name": "Yann LeCun", + "familyName": "LeCun", + "givenName": "Yann" + }, + { + "@type": "Person", + "name": "Yoshua Bengio", + "familyName": "Bengio", + "givenName": "Yoshua" + }, + { + "@type": "Person", + "name": "Geoffrey Hinton", + "familyName": "Hinton", + "givenName": "Geoffrey" + } + ], + "datePublished": "2015-05-28", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7553", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "521", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/nature14539" + }, + "url": "https://doi.org/10.1038/nature14539", + "pagination": "436-444", + "pageStart": "436", + "pageEnd": "444" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "@context": "https://schema.org", + "name": "The large N limit of superconformal field theories and supergravity", + "author": [ + { + "@type": "Person", + "name": "Juan Maldacena", + "familyName": "Maldacena", + "givenName": "Juan" + } + ], + "datePublished": "1998", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "2", + "isPartOf": { + "@type": "Periodical", + "name": "Advances in Theoretical and Mathematical Physics" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.4310/ATMP.1998.v2.n2.a1" + }, + "url": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "pagination": "231-252", + "pageStart": "231", + "pageEnd": "252" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "@context": "https://schema.org", + "name": "Attention is all you need", + "author": [ + { + "@type": "Person", + "name": "Ashish Vaswani", + "familyName": "Vaswani", + "givenName": "Ashish" + }, + { + "@type": "Person", + "name": "Noam Shazeer", + "familyName": "Shazeer", + "givenName": "Noam" + }, + { + "@type": "Person", + "name": "Niki Parmar", + "familyName": "Parmar", + "givenName": "Niki" + }, + { + "@type": "Person", + "name": "Jakob Uszkoreit", + "familyName": "Uszkoreit", + "givenName": "Jakob" + } + ], + "datePublished": "2017-06-12", + "publisher": { + "@type": "Organization", + "name": "arXiv" + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.48550/arXiv.1706.03762" + }, + { + "@type": "PropertyValue", + "propertyID": "arXiv", + "value": "1706.03762" + } + ], + "url": "https://doi.org/10.48550/arXiv.1706.03762", + "sameAs": "https://arxiv.org/abs/1706.03762" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "@context": "https://schema.org", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "author": [ + { + "@type": "Person", + "name": "Mark D. Wilkinson", + "familyName": "Wilkinson", + "givenName": "Mark D." + }, + { + "@type": "Person", + "name": "Michel Dumontier", + "familyName": "Dumontier", + "givenName": "Michel" + }, + { + "@type": "Person", + "name": "IJsbrand Jan Aalbersberg", + "familyName": "Aalbersberg", + "givenName": "IJsbrand Jan" + }, + { + "@type": "Person", + "name": "Gabrielle Appleton", + "familyName": "Appleton", + "givenName": "Gabrielle" + } + ], + "datePublished": "2016-03-15", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "3", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific Data" + } + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/sdata.2016.18" + }, + { + "@type": "PropertyValue", + "propertyID": "PMID", + "value": "26978244" + }, + { + "@type": "PropertyValue", + "propertyID": "PMCID", + "value": "PMC4792175" + } + ], + "url": "https://doi.org/10.1038/sdata.2016.18", + "sameAs": [ + "https://pubmed.ncbi.nlm.nih.gov/26978244/", + "https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/" + ], + "pagination": "160018", + "pageStart": "160018" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "@context": "https://schema.org", + "name": "Block Editor Handbook", + "author": [ + { + "@type": "Organization", + "name": "WordPress.org" + } + ], + "url": "https://developer.wordpress.org/block-editor/", + "isPartOf": { + "@type": "WebSite", + "name": "WordPress Developer Resources" + } + } + ] + }, + { + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + } + ], + "url": "http://localhost:8890/what-a-bibliography-tells-machines/", + "name": "What a bibliography tells machines", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4b-nlweb-aggregator-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4b-nlweb-aggregator-docs.json new file mode 100644 index 0000000..35a5e18 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/4b-nlweb-aggregator-docs.json @@ -0,0 +1,584 @@ +[ + { + "id": "8572232931887606628", + "schema_json": { + "@context": "https://schema.org", + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "@context": "https://schema.org", + "name": "The Semantic Web", + "author": [ + { + "@type": "Person", + "name": "Tim Berners-Lee", + "familyName": "Berners-Lee", + "givenName": "Tim" + }, + { + "@type": "Person", + "name": "James Hendler", + "familyName": "Hendler", + "givenName": "James" + }, + { + "@type": "Person", + "name": "Ora Lassila", + "familyName": "Lassila", + "givenName": "Ora" + } + ], + "datePublished": "2001-05", + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/scientificamerican0501-34" + }, + "url": "https://doi.org/10.1038/scientificamerican0501-34", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "5", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "284", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific American" + } + } + }, + "pagination": "34-43", + "pageStart": "34", + "pageEnd": "43" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "@context": "https://schema.org", + "name": "Labyrinths: Selected stories and other writings", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "isbn": "9780811200127", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780811200127" + }, + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "@context": "https://schema.org", + "name": "The library of Babel", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isPartOf": { + "@type": "Book", + "name": "Labyrinths: Selected stories and other writings" + }, + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "pagination": "51-58", + "pageStart": "51", + "pageEnd": "58", + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ], + "translator": [ + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "@context": "https://schema.org", + "name": "Introduction to algorithms", + "author": [ + { + "@type": "Person", + "name": "Thomas H. Cormen", + "familyName": "Cormen", + "givenName": "Thomas H." + }, + { + "@type": "Person", + "name": "Charles E. Leiserson", + "familyName": "Leiserson", + "givenName": "Charles E." + }, + { + "@type": "Person", + "name": "Ronald L. Rivest", + "familyName": "Rivest", + "givenName": "Ronald L." + }, + { + "@type": "Person", + "name": "Clifford Stein", + "familyName": "Stein", + "givenName": "Clifford" + } + ], + "datePublished": "2009", + "publisher": { + "@type": "Organization", + "name": "MIT Press", + "location": "Cambridge, MA" + }, + "isbn": "9780262033848", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780262033848" + }, + "bookEdition": "3" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "@context": "https://schema.org", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "author": [ + { + "@type": "Person", + "name": "Jacob Devlin", + "familyName": "Devlin", + "givenName": "Jacob" + }, + { + "@type": "Person", + "name": "Ming-Wei Chang", + "familyName": "Chang", + "givenName": "Ming-Wei" + }, + { + "@type": "Person", + "name": "Kenton Lee", + "familyName": "Lee", + "givenName": "Kenton" + }, + { + "@type": "Person", + "name": "Kristina Toutanova", + "familyName": "Toutanova", + "givenName": "Kristina" + } + ], + "datePublished": "2019", + "isPartOf": { + "@type": "Book", + "name": "Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies" + }, + "publisher": { + "@type": "Organization", + "name": "Association for Computational Linguistics" + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.18653/v1/N19-1423" + }, + "url": "https://doi.org/10.18653/v1/N19-1423", + "pagination": "4171-4186", + "pageStart": "4171", + "pageEnd": "4186" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "@context": "https://schema.org", + "name": "Array programming with NumPy", + "author": [ + { + "@type": "Person", + "name": "Charles R. Harris", + "familyName": "Harris", + "givenName": "Charles R." + }, + { + "@type": "Person", + "name": "K. Jarrod Millman", + "familyName": "Millman", + "givenName": "K. Jarrod" + }, + { + "@type": "Person", + "name": "Stéfan J. van der Walt", + "familyName": "van der Walt", + "givenName": "Stéfan J." + }, + { + "@type": "Person", + "name": "Ralf Gommers", + "familyName": "Gommers", + "givenName": "Ralf" + } + ], + "datePublished": "2020-09-16", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7825", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "585", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/s41586-020-2649-2" + }, + "url": "https://doi.org/10.1038/s41586-020-2649-2", + "pagination": "357-362", + "pageStart": "357", + "pageEnd": "362" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "@context": "https://schema.org", + "name": "Literate programming", + "author": [ + { + "@type": "Person", + "name": "Donald E. Knuth", + "familyName": "Knuth", + "givenName": "Donald E." + } + ], + "datePublished": "1984", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "27", + "isPartOf": { + "@type": "Periodical", + "name": "The Computer Journal" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1093/comjnl/27.2.97" + }, + "url": "https://doi.org/10.1093/comjnl/27.2.97", + "pagination": "97-111", + "pageStart": "97", + "pageEnd": "111" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "@context": "https://schema.org", + "name": "Deep learning", + "author": [ + { + "@type": "Person", + "name": "Yann LeCun", + "familyName": "LeCun", + "givenName": "Yann" + }, + { + "@type": "Person", + "name": "Yoshua Bengio", + "familyName": "Bengio", + "givenName": "Yoshua" + }, + { + "@type": "Person", + "name": "Geoffrey Hinton", + "familyName": "Hinton", + "givenName": "Geoffrey" + } + ], + "datePublished": "2015-05-28", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7553", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "521", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/nature14539" + }, + "url": "https://doi.org/10.1038/nature14539", + "pagination": "436-444", + "pageStart": "436", + "pageEnd": "444" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "@context": "https://schema.org", + "name": "The large N limit of superconformal field theories and supergravity", + "author": [ + { + "@type": "Person", + "name": "Juan Maldacena", + "familyName": "Maldacena", + "givenName": "Juan" + } + ], + "datePublished": "1998", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "2", + "isPartOf": { + "@type": "Periodical", + "name": "Advances in Theoretical and Mathematical Physics" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.4310/ATMP.1998.v2.n2.a1" + }, + "url": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "pagination": "231-252", + "pageStart": "231", + "pageEnd": "252" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "@context": "https://schema.org", + "name": "Attention is all you need", + "author": [ + { + "@type": "Person", + "name": "Ashish Vaswani", + "familyName": "Vaswani", + "givenName": "Ashish" + }, + { + "@type": "Person", + "name": "Noam Shazeer", + "familyName": "Shazeer", + "givenName": "Noam" + }, + { + "@type": "Person", + "name": "Niki Parmar", + "familyName": "Parmar", + "givenName": "Niki" + }, + { + "@type": "Person", + "name": "Jakob Uszkoreit", + "familyName": "Uszkoreit", + "givenName": "Jakob" + } + ], + "datePublished": "2017-06-12", + "publisher": { + "@type": "Organization", + "name": "arXiv" + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.48550/arXiv.1706.03762" + }, + { + "@type": "PropertyValue", + "propertyID": "arXiv", + "value": "1706.03762" + } + ], + "url": "https://doi.org/10.48550/arXiv.1706.03762", + "sameAs": "https://arxiv.org/abs/1706.03762" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "@context": "https://schema.org", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "author": [ + { + "@type": "Person", + "name": "Mark D. Wilkinson", + "familyName": "Wilkinson", + "givenName": "Mark D." + }, + { + "@type": "Person", + "name": "Michel Dumontier", + "familyName": "Dumontier", + "givenName": "Michel" + }, + { + "@type": "Person", + "name": "IJsbrand Jan Aalbersberg", + "familyName": "Aalbersberg", + "givenName": "IJsbrand Jan" + }, + { + "@type": "Person", + "name": "Gabrielle Appleton", + "familyName": "Appleton", + "givenName": "Gabrielle" + } + ], + "datePublished": "2016-03-15", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "3", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific Data" + } + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/sdata.2016.18" + }, + { + "@type": "PropertyValue", + "propertyID": "PMID", + "value": "26978244" + }, + { + "@type": "PropertyValue", + "propertyID": "PMCID", + "value": "PMC4792175" + } + ], + "url": "https://doi.org/10.1038/sdata.2016.18", + "sameAs": [ + "https://pubmed.ncbi.nlm.nih.gov/26978244/", + "https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/" + ], + "pagination": "160018", + "pageStart": "160018" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "@context": "https://schema.org", + "name": "Block Editor Handbook", + "author": [ + { + "@type": "Organization", + "name": "WordPress.org" + } + ], + "url": "https://developer.wordpress.org/block-editor/", + "isPartOf": { + "@type": "WebSite", + "name": "WordPress Developer Resources" + } + } + ], + "description": "Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/" + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "name": "What a bibliography tells machines", + "site": "borges-trace" + }, + { + "id": "-7780111096921442705", + "schema_json": { + "@context": "https://schema.org", + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + }, + "url": "http://localhost:8890/author/admin/", + "name": "admin", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-mcp.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-mcp.json new file mode 100644 index 0000000..ad62f6f --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-mcp.json @@ -0,0 +1 @@ +{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"message_type\":\"result\",\"results\":[{\"@type\":\"Article\",\"url\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\",\"name\":\"What a bibliography tells machines\",\"site\":\"localhost\",\"siteUrl\":\"localhost\",\"score\":90,\"description\":\"stub ranking\",\"grounding\":{\"schema_object\":{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"datePublished\":\"2026-11-04T05:51:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}],\"citation\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"The Semantic Web\",\"author\":[{\"@type\":\"Person\",\"name\":\"Tim Berners-Lee\",\"familyName\":\"Berners-Lee\",\"givenName\":\"Tim\"},{\"@type\":\"Person\",\"name\":\"James Hendler\",\"familyName\":\"Hendler\",\"givenName\":\"James\"},{\"@type\":\"Person\",\"name\":\"Ora Lassila\",\"familyName\":\"Lassila\",\"givenName\":\"Ora\"}],\"datePublished\":\"2001-05\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.1038\\\/scientificamerican0501-34\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"isPartOf\":{\"@type\":\"PublicationIssue\",\"issueNumber\":\"5\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"284\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"Scientific American\"}}},\"pagination\":\"34-43\",\"pageStart\":\"34\",\"pageEnd\":\"43\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Labyrinths: Selected stories and other writings\",\"author\":[{\"@type\":\"Person\",\"name\":\"Jorge Luis Borges\",\"familyName\":\"Borges\",\"givenName\":\"Jorge Luis\"}],\"datePublished\":\"1962\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"New Directions\",\"location\":\"New York\"},\"isbn\":\"9780811200127\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"ISBN\",\"value\":\"9780811200127\"},\"editor\":[{\"@type\":\"Person\",\"name\":\"Donald A. Yates\",\"familyName\":\"Yates\",\"givenName\":\"Donald A.\"},{\"@type\":\"Person\",\"name\":\"James E. Irby\",\"familyName\":\"Irby\",\"givenName\":\"James E.\"}]},{\"@type\":\"Chapter\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962babel\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"The library of Babel\",\"author\":[{\"@type\":\"Person\",\"name\":\"Jorge Luis Borges\",\"familyName\":\"Borges\",\"givenName\":\"Jorge Luis\"}],\"datePublished\":\"1962\",\"isPartOf\":{\"@type\":\"Book\",\"name\":\"Labyrinths: Selected stories and other writings\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"New Directions\",\"location\":\"New York\"},\"pagination\":\"51-58\",\"pageStart\":\"51\",\"pageEnd\":\"58\",\"editor\":[{\"@type\":\"Person\",\"name\":\"Donald A. Yates\",\"familyName\":\"Yates\",\"givenName\":\"Donald A.\"},{\"@type\":\"Person\",\"name\":\"James E. Irby\",\"familyName\":\"Irby\",\"givenName\":\"James E.\"}],\"translator\":[{\"@type\":\"Person\",\"name\":\"James E. Irby\",\"familyName\":\"Irby\",\"givenName\":\"James E.\"}]},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-cormen2009\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Introduction to algorithms\",\"author\":[{\"@type\":\"Person\",\"name\":\"Thomas H. Cormen\",\"familyName\":\"Cormen\",\"givenName\":\"Thomas H.\"},{\"@type\":\"Person\",\"name\":\"Charles E. Leiserson\",\"familyName\":\"Leiserson\",\"givenName\":\"Charles E.\"},{\"@type\":\"Person\",\"name\":\"Ronald L. Rivest\",\"familyName\":\"Rivest\",\"givenName\":\"Ronald L.\"},{\"@type\":\"Person\",\"name\":\"Clifford Stein\",\"familyName\":\"Stein\",\"givenName\":\"Clifford\"}],\"datePublished\":\"2009\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"MIT Press\",\"location\":\"Cambridge, MA\"},\"isbn\":\"9780262033848\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"ISBN\",\"value\":\"9780262033848\"},\"bookEdition\":\"3\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"BERT: Pre-training of deep bidirectional transformers for language understanding\",\"author\":[{\"@type\":\"Person\",\"name\":\"Jacob Devlin\",\"familyName\":\"Devlin\",\"givenName\":\"Jacob\"},{\"@type\":\"Person\",\"name\":\"Ming-Wei Chang\",\"familyName\":\"Chang\",\"givenName\":\"Ming-Wei\"},{\"@type\":\"Person\",\"name\":\"Kenton Lee\",\"familyName\":\"Lee\",\"givenName\":\"Kenton\"},{\"@type\":\"Person\",\"name\":\"Kristina Toutanova\",\"familyName\":\"Toutanova\",\"givenName\":\"Kristina\"}],\"datePublished\":\"2019\",\"isPartOf\":{\"@type\":\"Book\",\"name\":\"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Association for Computational Linguistics\"},\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.18653\\\/v1\\\/N19-1423\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"pagination\":\"4171-4186\",\"pageStart\":\"4171\",\"pageEnd\":\"4186\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/s41586-020-2649-2\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Array programming with NumPy\",\"author\":[{\"@type\":\"Person\",\"name\":\"Charles R. Harris\",\"familyName\":\"Harris\",\"givenName\":\"Charles R.\"},{\"@type\":\"Person\",\"name\":\"K. Jarrod Millman\",\"familyName\":\"Millman\",\"givenName\":\"K. Jarrod\"},{\"@type\":\"Person\",\"name\":\"St\\u00e9fan J. van der Walt\",\"familyName\":\"van der Walt\",\"givenName\":\"St\\u00e9fan J.\"},{\"@type\":\"Person\",\"name\":\"Ralf Gommers\",\"familyName\":\"Gommers\",\"givenName\":\"Ralf\"}],\"datePublished\":\"2020-09-16\",\"isPartOf\":{\"@type\":\"PublicationIssue\",\"issueNumber\":\"7825\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"585\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"Nature\"}}},\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.1038\\\/s41586-020-2649-2\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/s41586-020-2649-2\",\"pagination\":\"357-362\",\"pageStart\":\"357\",\"pageEnd\":\"362\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1093\\\/comjnl\\\/27.2.97\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Literate programming\",\"author\":[{\"@type\":\"Person\",\"name\":\"Donald E. Knuth\",\"familyName\":\"Knuth\",\"givenName\":\"Donald E.\"}],\"datePublished\":\"1984\",\"isPartOf\":{\"@type\":\"PublicationIssue\",\"issueNumber\":\"2\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"27\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"The Computer Journal\"}}},\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.1093\\\/comjnl\\\/27.2.97\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.1093\\\/comjnl\\\/27.2.97\",\"pagination\":\"97-111\",\"pageStart\":\"97\",\"pageEnd\":\"111\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/nature14539\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Deep learning\",\"author\":[{\"@type\":\"Person\",\"name\":\"Yann LeCun\",\"familyName\":\"LeCun\",\"givenName\":\"Yann\"},{\"@type\":\"Person\",\"name\":\"Yoshua Bengio\",\"familyName\":\"Bengio\",\"givenName\":\"Yoshua\"},{\"@type\":\"Person\",\"name\":\"Geoffrey Hinton\",\"familyName\":\"Hinton\",\"givenName\":\"Geoffrey\"}],\"datePublished\":\"2015-05-28\",\"isPartOf\":{\"@type\":\"PublicationIssue\",\"issueNumber\":\"7553\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"521\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"Nature\"}}},\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.1038\\\/nature14539\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/nature14539\",\"pagination\":\"436-444\",\"pageStart\":\"436\",\"pageEnd\":\"444\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.4310\\\/ATMP.1998.v2.n2.a1\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"The large N limit of superconformal field theories and supergravity\",\"author\":[{\"@type\":\"Person\",\"name\":\"Juan Maldacena\",\"familyName\":\"Maldacena\",\"givenName\":\"Juan\"}],\"datePublished\":\"1998\",\"isPartOf\":{\"@type\":\"PublicationIssue\",\"issueNumber\":\"2\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"2\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"Advances in Theoretical and Mathematical Physics\"}}},\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.4310\\\/ATMP.1998.v2.n2.a1\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.4310\\\/ATMP.1998.v2.n2.a1\",\"pagination\":\"231-252\",\"pageStart\":\"231\",\"pageEnd\":\"252\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.48550\\\/arXiv.1706.03762\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Attention is all you need\",\"author\":[{\"@type\":\"Person\",\"name\":\"Ashish Vaswani\",\"familyName\":\"Vaswani\",\"givenName\":\"Ashish\"},{\"@type\":\"Person\",\"name\":\"Noam Shazeer\",\"familyName\":\"Shazeer\",\"givenName\":\"Noam\"},{\"@type\":\"Person\",\"name\":\"Niki Parmar\",\"familyName\":\"Parmar\",\"givenName\":\"Niki\"},{\"@type\":\"Person\",\"name\":\"Jakob Uszkoreit\",\"familyName\":\"Uszkoreit\",\"givenName\":\"Jakob\"}],\"datePublished\":\"2017-06-12\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"arXiv\"},\"identifier\":[{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.48550\\\/arXiv.1706.03762\"},{\"@type\":\"PropertyValue\",\"propertyID\":\"arXiv\",\"value\":\"1706.03762\"}],\"url\":\"https:\\\/\\\/doi.org\\\/10.48550\\\/arXiv.1706.03762\",\"sameAs\":\"https:\\\/\\\/arxiv.org\\\/abs\\\/1706.03762\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/sdata.2016.18\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"The FAIR Guiding Principles for scientific data management and stewardship\",\"author\":[{\"@type\":\"Person\",\"name\":\"Mark D. Wilkinson\",\"familyName\":\"Wilkinson\",\"givenName\":\"Mark D.\"},{\"@type\":\"Person\",\"name\":\"Michel Dumontier\",\"familyName\":\"Dumontier\",\"givenName\":\"Michel\"},{\"@type\":\"Person\",\"name\":\"IJsbrand Jan Aalbersberg\",\"familyName\":\"Aalbersberg\",\"givenName\":\"IJsbrand Jan\"},{\"@type\":\"Person\",\"name\":\"Gabrielle Appleton\",\"familyName\":\"Appleton\",\"givenName\":\"Gabrielle\"}],\"datePublished\":\"2016-03-15\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"3\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"Scientific Data\"}},\"identifier\":[{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.1038\\\/sdata.2016.18\"},{\"@type\":\"PropertyValue\",\"propertyID\":\"PMID\",\"value\":\"26978244\"},{\"@type\":\"PropertyValue\",\"propertyID\":\"PMCID\",\"value\":\"PMC4792175\"}],\"url\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/sdata.2016.18\",\"sameAs\":[\"https:\\\/\\\/pubmed.ncbi.nlm.nih.gov\\\/26978244\\\/\",\"https:\\\/\\\/pmc.ncbi.nlm.nih.gov\\\/articles\\\/PMC4792175\\\/\"],\"pagination\":\"160018\",\"pageStart\":\"160018\"},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-wporg-handbook\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Block Editor Handbook\",\"author\":[{\"@type\":\"Organization\",\"name\":\"WordPress.org\"}],\"url\":\"https:\\\/\\\/developer.wordpress.org\\\/block-editor\\\/\",\"isPartOf\":{\"@type\":\"WebSite\",\"name\":\"WordPress Developer Resources\"}}]}}}],\"debug\":[{\"step\":\"Decontextualization\",\"raw_query\":\"NumPy\",\"decontextualized_query\":\"NumPy\",\"was_changed\":false},{\"step\":\"Query Fanout\",\"enabled\":false,\"message\":\"Query fanout disabled in settings\"},{\"step\":\"Retrieval\",\"mode\":\"single\",\"query\":\"NumPy\",\"max_results\":20,\"items_found\":1},{\"step\":\"Ranking\",\"items_before\":1,\"items_after\":1,\"top_score\":90}]}"}],"isError":false}} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-ranking-prompts.jsonl b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-ranking-prompts.jsonl new file mode 100644 index 0000000..39e8709 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/5-nlweb-wp-ranking-prompts.jsonl @@ -0,0 +1 @@ +{"model":"stub","max_tokens":512,"system":"You are a helpful assistant. Respond ONLY with valid JSON matching this schema: {\"score\":\"integer between 0 and 100\",\"description\":\"short description of the item\"}","messages":[{"role":"user","content":"Assign a score between 0 and 100 to the following item based on how relevant it is to the user's question. Use your knowledge from other sources, about the item, to make a judgement. If the score is above 50, provide a short description of the item highlighting the relevance to the user's question, without mentioning the user's question. If the score is below 75, in the description, include the reason why it is still relevant. The description you generate should be in the same language as the item's description.\n\nThe user's question is: \"NumPy\". The item's description in schema.org format is \"{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}],\"citation\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"The Semantic Web\",\"author\":[{\"@type\":\"Person\",\"name\":\"Tim Berners-Lee\",\"familyName\":\"Berners-Lee\",\"givenName\":\"Tim\"},{\"@type\":\"Person\",\"name\":\"James Hendler\",\"familyName\":\"Hendler\",\"givenName\":\"James\"},{\"@type\":\"Person\",\"name\":\"Ora Lassila\",\"familyName\":\"Lassila\",\"givenName\":\"Ora\"}],\"datePublished\":\"2001-05\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"DOI\",\"value\":\"10.1038\\\/scientificamerican0501-34\"},\"url\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"isPartOf\":{\"@type\":\"PublicationIssue\",\"issueNumber\":\"5\",\"isPartOf\":{\"@type\":\"PublicationVolume\",\"volumeNumber\":\"284\",\"isPartOf\":{\"@type\":\"Periodical\",\"name\":\"Scientific American\"}}},\"pagination\":\"34-43\",\"pageStart\":\"34\",\"pageEnd\":\"43\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Labyrinths: Selected stories and other writings\",\"author\":[{\"@type\":\"Person\",\"name\":\"Jorge Luis Borges\",\"familyName\":\"Borges\",\"givenName\":\"Jorge Luis\"}],\"datePublished\":\"1962\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"New Directions\",\"location\":\"New York\"},\"isbn\":\"9780811200127\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"ISBN\",\"value\":\"9780811200127\"},\"editor\":[{\"@type\":\"Person\",\"name\":\"Donald A. Yates\",\"familyName\":\"Yates\",\"givenName\":\"Donald A.\"},{\"@type\":\"Person\",\"name\":\"James E. Irby\",\"familyName\":\"Irby\",\"givenName\":\"James E.\"}]},{\"@type\":\"Chapter\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962babel\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"The library of Babel\",\"author\":[{\"@type\":\"Person\",\"name\":\"Jorge Luis Borges\",\"familyName\":\"Borges\",\"givenName\":\"Jorge Luis\"}],\"datePublished\":\"1962\",\"isPartOf\":{\"@type\":\"Book\",\"name\":\"Labyrinths: Selected stories and other writings\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"New Directions\",\"location\":\"New York\"},\"pagination\":\"51-58\",\"pageStart\":\"51\",\"pageEnd\":\"58\",\"editor\":[{\"@type\":\"Person\",\"name\":\"Donald A. Yates\",\"familyName\":\"Yates\",\"givenName\":\"Donald A.\"},{\"@type\":\"Person\",\"name\":\"James E. Irby\",\"familyName\":\"Irby\",\"givenName\":\"James E.\"}],\"translator\":[{\"@type\":\"Person\",\"name\":\"James E. Irby\",\"familyName\":\"Irby\",\"givenName\":\"James E.\"}]},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-cormen2009\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"Introduction to algorithms\",\"author\":[{\"@type\":\"Person\",\"name\":\"Thomas H. Cormen\",\"familyName\":\"Cormen\",\"givenName\":\"Thomas H.\"},{\"@type\":\"Person\",\"name\":\"Charles E. Leiserson\",\"familyName\":\"Leiserson\",\"givenName\":\"Charles E.\"},{\"@type\":\"Person\",\"name\":\"Ronald L. Rivest\",\"familyName\":\"Rivest\",\"givenName\":\"Ronald L.\"},{\"@type\":\"Person\",\"name\":\"Clifford Stein\",\"familyName\":\"Stein\",\"givenName\":\"Clifford\"}],\"datePublished\":\"2009\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"MIT Press\",\"location\":\"Cambridge, MA\"},\"isbn\":\"9780262033848\",\"identifier\":{\"@type\":\"PropertyValue\",\"propertyID\":\"ISBN\",\"value\":\"9780262033848\"},\"bookEdition\":\"3\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"@context\":\"https:\\\/\\\/schema.org\",\"name\":\"BERT: Pre-training of deep bidirectional transformers for language understanding\",\"author\":[{\"@type\":\"Person\",\"name\":\"Jacob Devlin\",\"familyName\":\"Devlin\",\"givenName\":\"Jacob\"},{\"@type\":\"Person\",\"name\":\"Ming-Wei Ch...}\"."}]} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/survival.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/survival.json new file mode 100644 index 0000000..5462c53 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-embed/survival.json @@ -0,0 +1,1108 @@ +{ + "1 page HTML (all JSON-LD)": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "2 Yoast graph only": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "3 Yoast aggregator feed": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4a NLWeb index, crawled page": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4b NLWeb index, aggregator feed": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5 NLWeb WP plugin, MCP answer": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5p NLWeb WP plugin, ranking prompt (4,000-char cut)": { + "harris2020": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "lecun2015": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "wilkinson2016": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "knuth1984": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": false, + "isbn": null, + "publisher": null, + "_present": false + }, + "vaswani2017": { + "title": false, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": false, + "isbn": null, + "publisher": false, + "_present": false + }, + "devlin2019": { + "title": false, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": false, + "isbn": null, + "publisher": false, + "_present": false + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": false, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": false + } + } +} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/1-page-json-ld.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/1-page-json-ld.json new file mode 100644 index 0000000..1dedc83 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/1-page-json-ld.json @@ -0,0 +1,718 @@ +[ +{ + "@context": "https:\/\/schema.org", + "@graph": [ + { + "@type": "Article", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#article", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "author": { + "name": "admin", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "mainEntityOfPage": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + }, + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ] + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "url": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/", + "name": "What a bibliography tells machines - Borges trace", + "isPartOf": { + "@id": "http:\/\/localhost:8890\/#website" + }, + "datePublished": "2026-11-04T05:51:33+00:00", + "author": { + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "breadcrumb": { + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb" + }, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "ReadAction", + "target": [ + "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/" + ] + } + ] + }, + { + "@type": "BreadcrumbList", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#breadcrumb", + "itemListElement": [ + { + "@type": "ListItem", + "position": 1, + "name": "Home", + "item": "http:\/\/localhost:8890\/" + }, + { + "@type": "ListItem", + "position": 2, + "name": "What a bibliography tells machines" + } + ] + }, + { + "@type": "WebSite", + "@id": "http:\/\/localhost:8890\/#website", + "url": "http:\/\/localhost:8890\/", + "name": "Borges trace", + "description": "", + "potentialAction": [ + { + "@type": "SearchAction", + "target": { + "@type": "EntryPoint", + "urlTemplate": "http:\/\/localhost:8890\/?s={search_term_string}" + }, + "query-input": { + "@type": "PropertyValueSpecification", + "valueRequired": true, + "valueName": "search_term_string" + } + } + ], + "inLanguage": "en-US" + }, + { + "@type": "Person", + "@id": "http:\/\/localhost:8890\/#\/schema\/person\/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": { + "@type": "ImageObject", + "inLanguage": "en-US", + "@id": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "url": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "contentUrl": "https:\/\/secure.gravatar.com\/avatar\/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "caption": "admin" + }, + "sameAs": [ + "http:\/\/localhost:8890" + ], + "url": "http:\/\/localhost:8890\/author\/admin\/" + }, + { + "@type": "Article", + "@id": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "@context": "https:\/\/schema.org", + "name": "The Semantic Web", + "author": [ + { + "@type": "Person", + "name": "Tim Berners-Lee", + "familyName": "Berners-Lee", + "givenName": "Tim" + }, + { + "@type": "Person", + "name": "James Hendler", + "familyName": "Hendler", + "givenName": "James" + }, + { + "@type": "Person", + "name": "Ora Lassila", + "familyName": "Lassila", + "givenName": "Ora" + } + ], + "datePublished": "2001-05", + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/scientificamerican0501-34" + }, + "url": "https:\/\/doi.org\/10.1038\/scientificamerican0501-34", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "5", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "284", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific American" + } + } + }, + "pagination": "34-43", + "pageStart": "34", + "pageEnd": "43" + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962", + "@context": "https:\/\/schema.org", + "name": "Labyrinths: Selected stories and other writings", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "isbn": "9780811200127", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780811200127" + }, + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Chapter", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-borges1962babel", + "@context": "https:\/\/schema.org", + "name": "The library of Babel", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isPartOf": { + "@type": "Book", + "name": "Labyrinths: Selected stories and other writings" + }, + "publisher": { + "@type": "Organization", + "name": "New Directions", + "location": "New York" + }, + "pagination": "51-58", + "pageStart": "51", + "pageEnd": "58", + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ], + "translator": [ + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Book", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-cormen2009", + "@context": "https:\/\/schema.org", + "name": "Introduction to algorithms", + "author": [ + { + "@type": "Person", + "name": "Thomas H. Cormen", + "familyName": "Cormen", + "givenName": "Thomas H." + }, + { + "@type": "Person", + "name": "Charles E. Leiserson", + "familyName": "Leiserson", + "givenName": "Charles E." + }, + { + "@type": "Person", + "name": "Ronald L. Rivest", + "familyName": "Rivest", + "givenName": "Ronald L." + }, + { + "@type": "Person", + "name": "Clifford Stein", + "familyName": "Stein", + "givenName": "Clifford" + } + ], + "datePublished": "2009", + "publisher": { + "@type": "Organization", + "name": "MIT Press", + "location": "Cambridge, MA" + }, + "isbn": "9780262033848", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780262033848" + }, + "bookEdition": "3" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "@context": "https:\/\/schema.org", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "author": [ + { + "@type": "Person", + "name": "Jacob Devlin", + "familyName": "Devlin", + "givenName": "Jacob" + }, + { + "@type": "Person", + "name": "Ming-Wei Chang", + "familyName": "Chang", + "givenName": "Ming-Wei" + }, + { + "@type": "Person", + "name": "Kenton Lee", + "familyName": "Lee", + "givenName": "Kenton" + }, + { + "@type": "Person", + "name": "Kristina Toutanova", + "familyName": "Toutanova", + "givenName": "Kristina" + } + ], + "datePublished": "2019", + "isPartOf": { + "@type": "Book", + "name": "Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies" + }, + "publisher": { + "@type": "Organization", + "name": "Association for Computational Linguistics" + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.18653\/v1\/N19-1423" + }, + "url": "https:\/\/doi.org\/10.18653\/v1\/N19-1423", + "pagination": "4171-4186", + "pageStart": "4171", + "pageEnd": "4186" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "@context": "https:\/\/schema.org", + "name": "Array programming with NumPy", + "author": [ + { + "@type": "Person", + "name": "Charles R. Harris", + "familyName": "Harris", + "givenName": "Charles R." + }, + { + "@type": "Person", + "name": "K. Jarrod Millman", + "familyName": "Millman", + "givenName": "K. Jarrod" + }, + { + "@type": "Person", + "name": "Stéfan J. van der Walt", + "familyName": "van der Walt", + "givenName": "Stéfan J." + }, + { + "@type": "Person", + "name": "Ralf Gommers", + "familyName": "Gommers", + "givenName": "Ralf" + } + ], + "datePublished": "2020-09-16", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7825", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "585", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/s41586-020-2649-2" + }, + "url": "https:\/\/doi.org\/10.1038\/s41586-020-2649-2", + "pagination": "357-362", + "pageStart": "357", + "pageEnd": "362" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "@context": "https:\/\/schema.org", + "name": "Literate programming", + "author": [ + { + "@type": "Person", + "name": "Donald E. Knuth", + "familyName": "Knuth", + "givenName": "Donald E." + } + ], + "datePublished": "1984", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "27", + "isPartOf": { + "@type": "Periodical", + "name": "The Computer Journal" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1093\/comjnl\/27.2.97" + }, + "url": "https:\/\/doi.org\/10.1093\/comjnl\/27.2.97", + "pagination": "97-111", + "pageStart": "97", + "pageEnd": "111" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/nature14539", + "@context": "https:\/\/schema.org", + "name": "Deep learning", + "author": [ + { + "@type": "Person", + "name": "Yann LeCun", + "familyName": "LeCun", + "givenName": "Yann" + }, + { + "@type": "Person", + "name": "Yoshua Bengio", + "familyName": "Bengio", + "givenName": "Yoshua" + }, + { + "@type": "Person", + "name": "Geoffrey Hinton", + "familyName": "Hinton", + "givenName": "Geoffrey" + } + ], + "datePublished": "2015-05-28", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7553", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "521", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/nature14539" + }, + "url": "https:\/\/doi.org\/10.1038\/nature14539", + "pagination": "436-444", + "pageStart": "436", + "pageEnd": "444" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "@context": "https:\/\/schema.org", + "name": "The large N limit of superconformal field theories and supergravity", + "author": [ + { + "@type": "Person", + "name": "Juan Maldacena", + "familyName": "Maldacena", + "givenName": "Juan" + } + ], + "datePublished": "1998", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "2", + "isPartOf": { + "@type": "Periodical", + "name": "Advances in Theoretical and Mathematical Physics" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.4310\/ATMP.1998.v2.n2.a1" + }, + "url": "https:\/\/doi.org\/10.4310\/ATMP.1998.v2.n2.a1", + "pagination": "231-252", + "pageStart": "231", + "pageEnd": "252" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "@context": "https:\/\/schema.org", + "name": "Attention is all you need", + "author": [ + { + "@type": "Person", + "name": "Ashish Vaswani", + "familyName": "Vaswani", + "givenName": "Ashish" + }, + { + "@type": "Person", + "name": "Noam Shazeer", + "familyName": "Shazeer", + "givenName": "Noam" + }, + { + "@type": "Person", + "name": "Niki Parmar", + "familyName": "Parmar", + "givenName": "Niki" + }, + { + "@type": "Person", + "name": "Jakob Uszkoreit", + "familyName": "Uszkoreit", + "givenName": "Jakob" + } + ], + "datePublished": "2017-06-12", + "publisher": { + "@type": "Organization", + "name": "arXiv" + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.48550\/arXiv.1706.03762" + }, + { + "@type": "PropertyValue", + "propertyID": "arXiv", + "value": "1706.03762" + } + ], + "url": "https:\/\/doi.org\/10.48550\/arXiv.1706.03762", + "sameAs": "https:\/\/arxiv.org\/abs\/1706.03762" + }, + { + "@type": "ScholarlyArticle", + "@id": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "@context": "https:\/\/schema.org", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "author": [ + { + "@type": "Person", + "name": "Mark D. Wilkinson", + "familyName": "Wilkinson", + "givenName": "Mark D." + }, + { + "@type": "Person", + "name": "Michel Dumontier", + "familyName": "Dumontier", + "givenName": "Michel" + }, + { + "@type": "Person", + "name": "IJsbrand Jan Aalbersberg", + "familyName": "Aalbersberg", + "givenName": "IJsbrand Jan" + }, + { + "@type": "Person", + "name": "Gabrielle Appleton", + "familyName": "Appleton", + "givenName": "Gabrielle" + } + ], + "datePublished": "2016-03-15", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "3", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific Data" + } + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038\/sdata.2016.18" + }, + { + "@type": "PropertyValue", + "propertyID": "PMID", + "value": "26978244" + }, + { + "@type": "PropertyValue", + "propertyID": "PMCID", + "value": "PMC4792175" + } + ], + "url": "https:\/\/doi.org\/10.1038\/sdata.2016.18", + "sameAs": [ + "https:\/\/pubmed.ncbi.nlm.nih.gov\/26978244\/", + "https:\/\/pmc.ncbi.nlm.nih.gov\/articles\/PMC4792175\/" + ], + "pagination": "160018", + "pageStart": "160018" + }, + { + "@type": "WebPage", + "@id": "http:\/\/localhost:8890\/what-a-bibliography-tells-machines\/#ref-wporg-handbook", + "@context": "https:\/\/schema.org", + "name": "Block Editor Handbook", + "author": [ + { + "@type": "Organization", + "name": "WordPress.org" + } + ], + "url": "https:\/\/developer.wordpress.org\/block-editor\/", + "isPartOf": { + "@type": "WebSite", + "name": "WordPress Developer Resources" + } + } + ] + }, +{"@context":"https://schema.org","@type":"ItemList","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#bibliography-markup-value","numberOfItems":12,"itemListElement":[{"@type":"ListItem","position":1,"item":{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web","author":[{"@type":"Person","name":"Tim Berners-Lee","familyName":"Berners-Lee","givenName":"Tim"},{"@type":"Person","name":"James Hendler","familyName":"Hendler","givenName":"James"},{"@type":"Person","name":"Ora Lassila","familyName":"Lassila","givenName":"Ora"}],"datePublished":"2001-05","identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/scientificamerican0501-34"},"url":"https://doi.org/10.1038/scientificamerican0501-34","isPartOf":{"@type":"PublicationIssue","issueNumber":"5","isPartOf":{"@type":"PublicationVolume","volumeNumber":"284","isPartOf":{"@type":"Periodical","name":"Scientific American"}}},"pagination":"34-43","pageStart":"34","pageEnd":"43"}},{"@type":"ListItem","position":2,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"isbn":"9780811200127","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780811200127"},"editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":3,"item":{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","isPartOf":{"@type":"Book","name":"Labyrinths: Selected stories and other writings"},"publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"pagination":"51-58","pageStart":"51","pageEnd":"58","editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}],"translator":[{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]}},{"@type":"ListItem","position":4,"item":{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms","author":[{"@type":"Person","name":"Thomas H. Cormen","familyName":"Cormen","givenName":"Thomas H."},{"@type":"Person","name":"Charles E. Leiserson","familyName":"Leiserson","givenName":"Charles E."},{"@type":"Person","name":"Ronald L. Rivest","familyName":"Rivest","givenName":"Ronald L."},{"@type":"Person","name":"Clifford Stein","familyName":"Stein","givenName":"Clifford"}],"datePublished":"2009","publisher":{"@type":"Organization","name":"MIT Press","location":"Cambridge, MA"},"isbn":"9780262033848","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780262033848"},"bookEdition":"3"}},{"@type":"ListItem","position":5,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding","author":[{"@type":"Person","name":"Jacob Devlin","familyName":"Devlin","givenName":"Jacob"},{"@type":"Person","name":"Ming-Wei Chang","familyName":"Chang","givenName":"Ming-Wei"},{"@type":"Person","name":"Kenton Lee","familyName":"Lee","givenName":"Kenton"},{"@type":"Person","name":"Kristina Toutanova","familyName":"Toutanova","givenName":"Kristina"}],"datePublished":"2019","isPartOf":{"@type":"Book","name":"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies"},"publisher":{"@type":"Organization","name":"Association for Computational Linguistics"},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.18653/v1/N19-1423"},"url":"https://doi.org/10.18653/v1/N19-1423","pagination":"4171-4186","pageStart":"4171","pageEnd":"4186"}},{"@type":"ListItem","position":6,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy","author":[{"@type":"Person","name":"Charles R. Harris","familyName":"Harris","givenName":"Charles R."},{"@type":"Person","name":"K. Jarrod Millman","familyName":"Millman","givenName":"K. Jarrod"},{"@type":"Person","name":"Stéfan J. van der Walt","familyName":"van der Walt","givenName":"Stéfan J."},{"@type":"Person","name":"Ralf Gommers","familyName":"Gommers","givenName":"Ralf"}],"datePublished":"2020-09-16","isPartOf":{"@type":"PublicationIssue","issueNumber":"7825","isPartOf":{"@type":"PublicationVolume","volumeNumber":"585","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/s41586-020-2649-2"},"url":"https://doi.org/10.1038/s41586-020-2649-2","pagination":"357-362","pageStart":"357","pageEnd":"362"}},{"@type":"ListItem","position":7,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming","author":[{"@type":"Person","name":"Donald E. Knuth","familyName":"Knuth","givenName":"Donald E."}],"datePublished":"1984","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"27","isPartOf":{"@type":"Periodical","name":"The Computer Journal"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1093/comjnl/27.2.97"},"url":"https://doi.org/10.1093/comjnl/27.2.97","pagination":"97-111","pageStart":"97","pageEnd":"111"}},{"@type":"ListItem","position":8,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning","author":[{"@type":"Person","name":"Yann LeCun","familyName":"LeCun","givenName":"Yann"},{"@type":"Person","name":"Yoshua Bengio","familyName":"Bengio","givenName":"Yoshua"},{"@type":"Person","name":"Geoffrey Hinton","familyName":"Hinton","givenName":"Geoffrey"}],"datePublished":"2015-05-28","isPartOf":{"@type":"PublicationIssue","issueNumber":"7553","isPartOf":{"@type":"PublicationVolume","volumeNumber":"521","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/nature14539"},"url":"https://doi.org/10.1038/nature14539","pagination":"436-444","pageStart":"436","pageEnd":"444"}},{"@type":"ListItem","position":9,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity","author":[{"@type":"Person","name":"Juan Maldacena","familyName":"Maldacena","givenName":"Juan"}],"datePublished":"1998","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"2","isPartOf":{"@type":"Periodical","name":"Advances in Theoretical and Mathematical Physics"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.4310/ATMP.1998.v2.n2.a1"},"url":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","pagination":"231-252","pageStart":"231","pageEnd":"252"}},{"@type":"ListItem","position":10,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need","author":[{"@type":"Person","name":"Ashish Vaswani","familyName":"Vaswani","givenName":"Ashish"},{"@type":"Person","name":"Noam Shazeer","familyName":"Shazeer","givenName":"Noam"},{"@type":"Person","name":"Niki Parmar","familyName":"Parmar","givenName":"Niki"},{"@type":"Person","name":"Jakob Uszkoreit","familyName":"Uszkoreit","givenName":"Jakob"}],"datePublished":"2017-06-12","publisher":{"@type":"Organization","name":"arXiv"},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.48550/arXiv.1706.03762"},{"@type":"PropertyValue","propertyID":"arXiv","value":"1706.03762"}],"url":"https://doi.org/10.48550/arXiv.1706.03762","sameAs":"https://arxiv.org/abs/1706.03762"}},{"@type":"ListItem","position":11,"item":{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship","author":[{"@type":"Person","name":"Mark D. Wilkinson","familyName":"Wilkinson","givenName":"Mark D."},{"@type":"Person","name":"Michel Dumontier","familyName":"Dumontier","givenName":"Michel"},{"@type":"Person","name":"IJsbrand Jan Aalbersberg","familyName":"Aalbersberg","givenName":"IJsbrand Jan"},{"@type":"Person","name":"Gabrielle Appleton","familyName":"Appleton","givenName":"Gabrielle"}],"datePublished":"2016-03-15","isPartOf":{"@type":"PublicationVolume","volumeNumber":"3","isPartOf":{"@type":"Periodical","name":"Scientific Data"}},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/sdata.2016.18"},{"@type":"PropertyValue","propertyID":"PMID","value":"26978244"},{"@type":"PropertyValue","propertyID":"PMCID","value":"PMC4792175"}],"url":"https://doi.org/10.1038/sdata.2016.18","sameAs":["https://pubmed.ncbi.nlm.nih.gov/26978244/","https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/"],"pagination":"160018","pageStart":"160018"}},{"@type":"ListItem","position":12,"item":{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook","author":[{"@type":"Organization","name":"WordPress.org"}],"url":"https://developer.wordpress.org/block-editor/","isPartOf":{"@type":"WebSite","name":"WordPress Developer Resources"}}}]} +] diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-schemamap.xml b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-schemamap.xml new file mode 100644 index 0000000..749bb42 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-schemamap.xml @@ -0,0 +1,2 @@ + +http://localhost:8890/wp-json/yoast/v1/schema-aggregator/get-schema/post2026-11-04T05:51:33Zdaily0.8structuredData/schema.org diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-yoast-aggregator.ndjson b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-yoast-aggregator.ndjson new file mode 100644 index 0000000..3387aa7 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/3-yoast-aggregator.ndjson @@ -0,0 +1,16 @@ +{"@context":"https://schema.org","@type":"Article","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#article","isPartOf":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"author":{"name":"admin","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"headline":"What a bibliography tells machines","datePublished":"2026-11-04T05:51:33+00:00","mainEntityOfPage":{"@id":"http://localhost:8890/what-a-bibliography-tells-machines/"},"wordCount":292,"commentCount":0,"inLanguage":"en-US","citation":[{"@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings"},{"@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel"},{"@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need"},{"@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship"},{"@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook"}],"description":"Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/"} +{"@context":"https://schema.org","@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/","url":"http://localhost:8890/what-a-bibliography-tells-machines/","name":"What a bibliography tells machines - Borges trace","isPartOf":{"@id":"http://localhost:8890/#website"},"datePublished":"2026-11-04T05:51:33+00:00","author":{"@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6"},"inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"WebSite","@id":"http://localhost:8890/#website","url":"http://localhost:8890/","name":"Borges trace","description":"","inLanguage":"en-US"} +{"@context":"https://schema.org","@type":"Person","@id":"http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6","name":"admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","url":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g","caption":"admin"},"sameAs":["http://localhost:8890"],"url":"http://localhost:8890/author/admin/"} +{"@context":"https://schema.org","@type":"Article","@id":"https://doi.org/10.1038/scientificamerican0501-34","name":"The Semantic Web","author":[{"@type":"Person","name":"Tim Berners-Lee","familyName":"Berners-Lee","givenName":"Tim"},{"@type":"Person","name":"James Hendler","familyName":"Hendler","givenName":"James"},{"@type":"Person","name":"Ora Lassila","familyName":"Lassila","givenName":"Ora"}],"datePublished":"2001-05","identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/scientificamerican0501-34"},"url":"https://doi.org/10.1038/scientificamerican0501-34","isPartOf":{"@type":"PublicationIssue","issueNumber":"5","isPartOf":{"@type":"PublicationVolume","volumeNumber":"284","isPartOf":{"@type":"Periodical","name":"Scientific American"}}},"pagination":"34-43","pageStart":"34","pageEnd":"43","description":"Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/"} +{"@context":"https://schema.org","@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962","name":"Labyrinths: Selected stories and other writings","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"isbn":"9780811200127","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780811200127"},"editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]} +{"@context":"https://schema.org","@type":"Chapter","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel","name":"The library of Babel","author":[{"@type":"Person","name":"Jorge Luis Borges","familyName":"Borges","givenName":"Jorge Luis"}],"datePublished":"1962","isPartOf":{"@type":"Book","name":"Labyrinths: Selected stories and other writings"},"publisher":{"@type":"Organization","name":"New Directions","location":"New York"},"pagination":"51-58","pageStart":"51","pageEnd":"58","editor":[{"@type":"Person","name":"Donald A. Yates","familyName":"Yates","givenName":"Donald A."},{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}],"translator":[{"@type":"Person","name":"James E. Irby","familyName":"Irby","givenName":"James E."}]} +{"@context":"https://schema.org","@type":"Book","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009","name":"Introduction to algorithms","author":[{"@type":"Person","name":"Thomas H. Cormen","familyName":"Cormen","givenName":"Thomas H."},{"@type":"Person","name":"Charles E. Leiserson","familyName":"Leiserson","givenName":"Charles E."},{"@type":"Person","name":"Ronald L. Rivest","familyName":"Rivest","givenName":"Ronald L."},{"@type":"Person","name":"Clifford Stein","familyName":"Stein","givenName":"Clifford"}],"datePublished":"2009","publisher":{"@type":"Organization","name":"MIT Press","location":"Cambridge, MA"},"isbn":"9780262033848","identifier":{"@type":"PropertyValue","propertyID":"ISBN","value":"9780262033848"},"bookEdition":"3"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.18653/v1/N19-1423","name":"BERT: Pre-training of deep bidirectional transformers for language understanding","author":[{"@type":"Person","name":"Jacob Devlin","familyName":"Devlin","givenName":"Jacob"},{"@type":"Person","name":"Ming-Wei Chang","familyName":"Chang","givenName":"Ming-Wei"},{"@type":"Person","name":"Kenton Lee","familyName":"Lee","givenName":"Kenton"},{"@type":"Person","name":"Kristina Toutanova","familyName":"Toutanova","givenName":"Kristina"}],"datePublished":"2019","isPartOf":{"@type":"Book","name":"Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies"},"publisher":{"@type":"Organization","name":"Association for Computational Linguistics"},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.18653/v1/N19-1423"},"url":"https://doi.org/10.18653/v1/N19-1423","pagination":"4171-4186","pageStart":"4171","pageEnd":"4186"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/s41586-020-2649-2","name":"Array programming with NumPy","author":[{"@type":"Person","name":"Charles R. Harris","familyName":"Harris","givenName":"Charles R."},{"@type":"Person","name":"K. Jarrod Millman","familyName":"Millman","givenName":"K. Jarrod"},{"@type":"Person","name":"Stéfan J. van der Walt","familyName":"van der Walt","givenName":"Stéfan J."},{"@type":"Person","name":"Ralf Gommers","familyName":"Gommers","givenName":"Ralf"}],"datePublished":"2020-09-16","isPartOf":{"@type":"PublicationIssue","issueNumber":"7825","isPartOf":{"@type":"PublicationVolume","volumeNumber":"585","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/s41586-020-2649-2"},"url":"https://doi.org/10.1038/s41586-020-2649-2","pagination":"357-362","pageStart":"357","pageEnd":"362"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.1093/comjnl/27.2.97","name":"Literate programming","author":[{"@type":"Person","name":"Donald E. Knuth","familyName":"Knuth","givenName":"Donald E."}],"datePublished":"1984","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"27","isPartOf":{"@type":"Periodical","name":"The Computer Journal"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1093/comjnl/27.2.97"},"url":"https://doi.org/10.1093/comjnl/27.2.97","pagination":"97-111","pageStart":"97","pageEnd":"111"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/nature14539","name":"Deep learning","author":[{"@type":"Person","name":"Yann LeCun","familyName":"LeCun","givenName":"Yann"},{"@type":"Person","name":"Yoshua Bengio","familyName":"Bengio","givenName":"Yoshua"},{"@type":"Person","name":"Geoffrey Hinton","familyName":"Hinton","givenName":"Geoffrey"}],"datePublished":"2015-05-28","isPartOf":{"@type":"PublicationIssue","issueNumber":"7553","isPartOf":{"@type":"PublicationVolume","volumeNumber":"521","isPartOf":{"@type":"Periodical","name":"Nature"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/nature14539"},"url":"https://doi.org/10.1038/nature14539","pagination":"436-444","pageStart":"436","pageEnd":"444"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","name":"The large N limit of superconformal field theories and supergravity","author":[{"@type":"Person","name":"Juan Maldacena","familyName":"Maldacena","givenName":"Juan"}],"datePublished":"1998","isPartOf":{"@type":"PublicationIssue","issueNumber":"2","isPartOf":{"@type":"PublicationVolume","volumeNumber":"2","isPartOf":{"@type":"Periodical","name":"Advances in Theoretical and Mathematical Physics"}}},"identifier":{"@type":"PropertyValue","propertyID":"DOI","value":"10.4310/ATMP.1998.v2.n2.a1"},"url":"https://doi.org/10.4310/ATMP.1998.v2.n2.a1","pagination":"231-252","pageStart":"231","pageEnd":"252"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.48550/arXiv.1706.03762","name":"Attention is all you need","author":[{"@type":"Person","name":"Ashish Vaswani","familyName":"Vaswani","givenName":"Ashish"},{"@type":"Person","name":"Noam Shazeer","familyName":"Shazeer","givenName":"Noam"},{"@type":"Person","name":"Niki Parmar","familyName":"Parmar","givenName":"Niki"},{"@type":"Person","name":"Jakob Uszkoreit","familyName":"Uszkoreit","givenName":"Jakob"}],"datePublished":"2017-06-12","publisher":{"@type":"Organization","name":"arXiv"},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.48550/arXiv.1706.03762"},{"@type":"PropertyValue","propertyID":"arXiv","value":"1706.03762"}],"url":"https://doi.org/10.48550/arXiv.1706.03762","sameAs":"https://arxiv.org/abs/1706.03762"} +{"@context":"https://schema.org","@type":"ScholarlyArticle","@id":"https://doi.org/10.1038/sdata.2016.18","name":"The FAIR Guiding Principles for scientific data management and stewardship","author":[{"@type":"Person","name":"Mark D. Wilkinson","familyName":"Wilkinson","givenName":"Mark D."},{"@type":"Person","name":"Michel Dumontier","familyName":"Dumontier","givenName":"Michel"},{"@type":"Person","name":"IJsbrand Jan Aalbersberg","familyName":"Aalbersberg","givenName":"IJsbrand Jan"},{"@type":"Person","name":"Gabrielle Appleton","familyName":"Appleton","givenName":"Gabrielle"}],"datePublished":"2016-03-15","isPartOf":{"@type":"PublicationVolume","volumeNumber":"3","isPartOf":{"@type":"Periodical","name":"Scientific Data"}},"identifier":[{"@type":"PropertyValue","propertyID":"DOI","value":"10.1038/sdata.2016.18"},{"@type":"PropertyValue","propertyID":"PMID","value":"26978244"},{"@type":"PropertyValue","propertyID":"PMCID","value":"PMC4792175"}],"url":"https://doi.org/10.1038/sdata.2016.18","sameAs":["https://pubmed.ncbi.nlm.nih.gov/26978244/","https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/"],"pagination":"160018","pageStart":"160018"} +{"@context":"https://schema.org","@type":"WebPage","@id":"http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook","name":"Block Editor Handbook","author":[{"@type":"Organization","name":"WordPress.org"}],"url":"https://developer.wordpress.org/block-editor/","isPartOf":{"@type":"WebSite","name":"WordPress Developer Resources"}} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4a-nlweb-crawl-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4a-nlweb-crawl-docs.json new file mode 100644 index 0000000..e8f2bda --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4a-nlweb-crawl-docs.json @@ -0,0 +1,606 @@ +[ + { + "id": "-8196569942028615400", + "schema_json": [ + { + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "potentialAction": [ + { + "@type": "CommentAction", + "name": "Comment", + "target": [ + "http://localhost:8890/what-a-bibliography-tells-machines/#respond" + ] + } + ], + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ] + }, + { + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + }, + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "@context": "https://schema.org", + "name": "The Semantic Web", + "author": [ + { + "@type": "Person", + "name": "Tim Berners-Lee", + "familyName": "Berners-Lee", + "givenName": "Tim" + }, + { + "@type": "Person", + "name": "James Hendler", + "familyName": "Hendler", + "givenName": "James" + }, + { + "@type": "Person", + "name": "Ora Lassila", + "familyName": "Lassila", + "givenName": "Ora" + } + ], + "datePublished": "2001-05", + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/scientificamerican0501-34" + }, + "url": "https://doi.org/10.1038/scientificamerican0501-34", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "5", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "284", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific American" + } + } + }, + "pagination": "34-43", + "pageStart": "34", + "pageEnd": "43" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "@context": "https://schema.org", + "name": "Labyrinths: Selected stories and other writings", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isbn": "9780811200127", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780811200127" + }, + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "@context": "https://schema.org", + "name": "The library of Babel", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isPartOf": { + "@type": "Book", + "name": "Labyrinths: Selected stories and other writings" + }, + "pagination": "51-58", + "pageStart": "51", + "pageEnd": "58", + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ], + "translator": [ + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "@context": "https://schema.org", + "name": "Introduction to algorithms", + "author": [ + { + "@type": "Person", + "name": "Thomas H. Cormen", + "familyName": "Cormen", + "givenName": "Thomas H." + }, + { + "@type": "Person", + "name": "Charles E. Leiserson", + "familyName": "Leiserson", + "givenName": "Charles E." + }, + { + "@type": "Person", + "name": "Ronald L. Rivest", + "familyName": "Rivest", + "givenName": "Ronald L." + }, + { + "@type": "Person", + "name": "Clifford Stein", + "familyName": "Stein", + "givenName": "Clifford" + } + ], + "datePublished": "2009", + "isbn": "9780262033848", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780262033848" + }, + "bookEdition": "3" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "@context": "https://schema.org", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "author": [ + { + "@type": "Person", + "name": "Jacob Devlin", + "familyName": "Devlin", + "givenName": "Jacob" + }, + { + "@type": "Person", + "name": "Ming-Wei Chang", + "familyName": "Chang", + "givenName": "Ming-Wei" + }, + { + "@type": "Person", + "name": "Kenton Lee", + "familyName": "Lee", + "givenName": "Kenton" + }, + { + "@type": "Person", + "name": "Kristina Toutanova", + "familyName": "Toutanova", + "givenName": "Kristina" + } + ], + "datePublished": "2019", + "isPartOf": { + "@type": "Book", + "name": "Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies" + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.18653/v1/N19-1423" + }, + "url": "https://doi.org/10.18653/v1/N19-1423", + "pagination": "4171-4186", + "pageStart": "4171", + "pageEnd": "4186" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "@context": "https://schema.org", + "name": "Array programming with NumPy", + "author": [ + { + "@type": "Person", + "name": "Charles R. Harris", + "familyName": "Harris", + "givenName": "Charles R." + }, + { + "@type": "Person", + "name": "K. Jarrod Millman", + "familyName": "Millman", + "givenName": "K. Jarrod" + }, + { + "@type": "Person", + "name": "Stéfan J. van der Walt", + "familyName": "van der Walt", + "givenName": "Stéfan J." + }, + { + "@type": "Person", + "name": "Ralf Gommers", + "familyName": "Gommers", + "givenName": "Ralf" + } + ], + "datePublished": "2020-09-16", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7825", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "585", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/s41586-020-2649-2" + }, + "url": "https://doi.org/10.1038/s41586-020-2649-2", + "pagination": "357-362", + "pageStart": "357", + "pageEnd": "362" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "@context": "https://schema.org", + "name": "Literate programming", + "author": [ + { + "@type": "Person", + "name": "Donald E. Knuth", + "familyName": "Knuth", + "givenName": "Donald E." + } + ], + "datePublished": "1984", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "27", + "isPartOf": { + "@type": "Periodical", + "name": "The Computer Journal" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1093/comjnl/27.2.97" + }, + "url": "https://doi.org/10.1093/comjnl/27.2.97", + "pagination": "97-111", + "pageStart": "97", + "pageEnd": "111" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "@context": "https://schema.org", + "name": "Deep learning", + "author": [ + { + "@type": "Person", + "name": "Yann LeCun", + "familyName": "LeCun", + "givenName": "Yann" + }, + { + "@type": "Person", + "name": "Yoshua Bengio", + "familyName": "Bengio", + "givenName": "Yoshua" + }, + { + "@type": "Person", + "name": "Geoffrey Hinton", + "familyName": "Hinton", + "givenName": "Geoffrey" + } + ], + "datePublished": "2015-05-28", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7553", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "521", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/nature14539" + }, + "url": "https://doi.org/10.1038/nature14539", + "pagination": "436-444", + "pageStart": "436", + "pageEnd": "444" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "@context": "https://schema.org", + "name": "The large N limit of superconformal field theories and supergravity", + "author": [ + { + "@type": "Person", + "name": "Juan Maldacena", + "familyName": "Maldacena", + "givenName": "Juan" + } + ], + "datePublished": "1998", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "2", + "isPartOf": { + "@type": "Periodical", + "name": "Advances in Theoretical and Mathematical Physics" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.4310/ATMP.1998.v2.n2.a1" + }, + "url": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "pagination": "231-252", + "pageStart": "231", + "pageEnd": "252" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "@context": "https://schema.org", + "name": "Attention is all you need", + "author": [ + { + "@type": "Person", + "name": "Ashish Vaswani", + "familyName": "Vaswani", + "givenName": "Ashish" + }, + { + "@type": "Person", + "name": "Noam Shazeer", + "familyName": "Shazeer", + "givenName": "Noam" + }, + { + "@type": "Person", + "name": "Niki Parmar", + "familyName": "Parmar", + "givenName": "Niki" + }, + { + "@type": "Person", + "name": "Jakob Uszkoreit", + "familyName": "Uszkoreit", + "givenName": "Jakob" + } + ], + "datePublished": "2017-06-12", + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.48550/arXiv.1706.03762" + }, + { + "@type": "PropertyValue", + "propertyID": "arXiv", + "value": "1706.03762" + } + ], + "url": "https://doi.org/10.48550/arXiv.1706.03762", + "sameAs": "https://arxiv.org/abs/1706.03762" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "@context": "https://schema.org", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "author": [ + { + "@type": "Person", + "name": "Mark D. Wilkinson", + "familyName": "Wilkinson", + "givenName": "Mark D." + }, + { + "@type": "Person", + "name": "Michel Dumontier", + "familyName": "Dumontier", + "givenName": "Michel" + }, + { + "@type": "Person", + "name": "IJsbrand Jan Aalbersberg", + "familyName": "Aalbersberg", + "givenName": "IJsbrand Jan" + }, + { + "@type": "Person", + "name": "Gabrielle Appleton", + "familyName": "Appleton", + "givenName": "Gabrielle" + } + ], + "datePublished": "2016-03-15", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "3", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific Data" + } + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/sdata.2016.18" + }, + { + "@type": "PropertyValue", + "propertyID": "PMID", + "value": "26978244" + }, + { + "@type": "PropertyValue", + "propertyID": "PMCID", + "value": "PMC4792175" + } + ], + "url": "https://doi.org/10.1038/sdata.2016.18", + "sameAs": [ + "https://pubmed.ncbi.nlm.nih.gov/26978244/", + "https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/" + ], + "pagination": "160018", + "pageStart": "160018" + } + ], + "url": "http://localhost:8890/what-a-bibliography-tells-machines/", + "name": "What a bibliography tells machines", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4b-nlweb-aggregator-docs.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4b-nlweb-aggregator-docs.json new file mode 100644 index 0000000..6370915 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/4b-nlweb-aggregator-docs.json @@ -0,0 +1,671 @@ +[ + { + "id": "-6581777201298263485", + "schema_json": { + "@context": "https://schema.org", + "@type": "Article", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "isPartOf": { + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/" + }, + "author": { + "name": "admin", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6" + }, + "headline": "What a bibliography tells machines", + "datePublished": "2026-11-04T05:51:33+00:00", + "wordCount": 292, + "commentCount": 0, + "inLanguage": "en-US", + "citation": [ + { + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings" + }, + { + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel" + }, + { + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need" + }, + { + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship" + }, + { + "@type": "WebPage", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-wporg-handbook", + "name": "Block Editor Handbook" + } + ], + "description": "Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/" + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#article", + "name": "What a bibliography tells machines", + "site": "borges-trace" + }, + { + "id": "1609575963707214689", + "schema_json": { + "@context": "https://schema.org", + "@type": "Person", + "@id": "http://localhost:8890/#/schema/person/136ec3c36fa9af648f2fe6e38bb2eda6", + "name": "admin", + "image": "https://secure.gravatar.com/avatar/9387ed9432ec25ef93df84b8a0b9697ddef435a945e7f244670c4f79f88363e9?s=96&d=mm&r=g", + "sameAs": [ + "http://localhost:8890" + ], + "url": "http://localhost:8890/author/admin/" + }, + "url": "http://localhost:8890/author/admin/", + "name": "admin", + "site": "borges-trace" + }, + { + "id": "-6248479622596190110", + "schema_json": { + "@context": "https://schema.org", + "@type": "Article", + "@id": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web", + "author": [ + { + "@type": "Person", + "name": "Tim Berners-Lee", + "familyName": "Berners-Lee", + "givenName": "Tim" + }, + { + "@type": "Person", + "name": "James Hendler", + "familyName": "Hendler", + "givenName": "James" + }, + { + "@type": "Person", + "name": "Ora Lassila", + "familyName": "Lassila", + "givenName": "Ora" + } + ], + "datePublished": "2001-05", + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/scientificamerican0501-34" + }, + "url": "https://doi.org/10.1038/scientificamerican0501-34", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "5", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "284", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific American" + } + } + }, + "pagination": "34-43", + "pageStart": "34", + "pageEnd": "43", + "description": "Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.\n\n\n\nBerners-Lee, T., Hendler, J., & Lassila, O. (2001, May). The semantic web. Scientific American, 284(5), 34–43. https://doi.org/10.1038/scientificamerican0501-34Borges, J. L. (1962a). Labyrinths: Selected stories and other writings. New Directions.Borges, J. L. (1962b). The library of Babel. In D. A. Yates & J. E. Irby (Eds.), Labyrinths: Selected stories and other writings (pp. 51–58). New Directions.Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). MIT Press.Devlin, J., Chang, M.-W., Lee, K., & Toutanova, K. (2019). BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies (pp. 4171–4186). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1423Harris, C. R., Millman, K. J., van der Walt, S. J., & Gommers, R. (2020). Array programming with NumPy. Nature, 585(7825), 357–362. https://doi.org/10.1038/s41586-020-2649-2Knuth, D. E. (1984). Literate programming. The Computer Journal, 27(2), 97–111. https://doi.org/10.1093/comjnl/27.2.97LeCun, Y., Bengio, Y., & Hinton, G. (2015). Deep learning. Nature, 521(7553), 436–444. https://doi.org/10.1038/nature14539Maldacena, J. (1998). The large N limit of superconformal field theories and supergravity. Advances in Theoretical and Mathematical Physics, 2(2), 231–252. https://doi.org/10.4310/ATMP.1998.v2.n2.a1Vaswani, A., Shazeer, N., Parmar, N., & Uszkoreit, J. (2017). Attention is all you need (arXiv:1706.03762). arXiv. https://doi.org/10.48550/arXiv.1706.03762Wilkinson, M. D., Dumontier, M., Aalbersberg, I. J., & Appleton, G. (2016). The FAIR Guiding Principles for scientific data management and stewardship. Scientific Data, 3, 160018. https://doi.org/10.1038/sdata.2016.18WordPress.org. (n.d.). Block editor handbook. WordPress Developer Resources. Retrieved October 27, 2026, from https://developer.wordpress.org/block-editor/" + }, + "url": "https://doi.org/10.1038/scientificamerican0501-34", + "name": "The Semantic Web", + "site": "borges-trace" + }, + { + "id": "5863679221241852233", + "schema_json": { + "@context": "https://schema.org", + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isbn": "9780811200127", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780811200127" + }, + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962", + "name": "Labyrinths: Selected stories and other writings", + "site": "borges-trace" + }, + { + "id": "-7209052708753203457", + "schema_json": { + "@context": "https://schema.org", + "@type": "Chapter", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel", + "author": [ + { + "@type": "Person", + "name": "Jorge Luis Borges", + "familyName": "Borges", + "givenName": "Jorge Luis" + } + ], + "datePublished": "1962", + "isPartOf": { + "@type": "Book", + "name": "Labyrinths: Selected stories and other writings" + }, + "pagination": "51-58", + "pageStart": "51", + "pageEnd": "58", + "editor": [ + { + "@type": "Person", + "name": "Donald A. Yates", + "familyName": "Yates", + "givenName": "Donald A." + }, + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ], + "translator": [ + { + "@type": "Person", + "name": "James E. Irby", + "familyName": "Irby", + "givenName": "James E." + } + ] + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-borges1962babel", + "name": "The library of Babel", + "site": "borges-trace" + }, + { + "id": "9056960626690215855", + "schema_json": { + "@context": "https://schema.org", + "@type": "Book", + "@id": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms", + "author": [ + { + "@type": "Person", + "name": "Thomas H. Cormen", + "familyName": "Cormen", + "givenName": "Thomas H." + }, + { + "@type": "Person", + "name": "Charles E. Leiserson", + "familyName": "Leiserson", + "givenName": "Charles E." + }, + { + "@type": "Person", + "name": "Ronald L. Rivest", + "familyName": "Rivest", + "givenName": "Ronald L." + }, + { + "@type": "Person", + "name": "Clifford Stein", + "familyName": "Stein", + "givenName": "Clifford" + } + ], + "datePublished": "2009", + "isbn": "9780262033848", + "identifier": { + "@type": "PropertyValue", + "propertyID": "ISBN", + "value": "9780262033848" + }, + "bookEdition": "3" + }, + "url": "http://localhost:8890/what-a-bibliography-tells-machines/#ref-cormen2009", + "name": "Introduction to algorithms", + "site": "borges-trace" + }, + { + "id": "-6077640910433186246", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "author": [ + { + "@type": "Person", + "name": "Jacob Devlin", + "familyName": "Devlin", + "givenName": "Jacob" + }, + { + "@type": "Person", + "name": "Ming-Wei Chang", + "familyName": "Chang", + "givenName": "Ming-Wei" + }, + { + "@type": "Person", + "name": "Kenton Lee", + "familyName": "Lee", + "givenName": "Kenton" + }, + { + "@type": "Person", + "name": "Kristina Toutanova", + "familyName": "Toutanova", + "givenName": "Kristina" + } + ], + "datePublished": "2019", + "isPartOf": { + "@type": "Book", + "name": "Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies" + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.18653/v1/N19-1423" + }, + "url": "https://doi.org/10.18653/v1/N19-1423", + "pagination": "4171-4186", + "pageStart": "4171", + "pageEnd": "4186" + }, + "url": "https://doi.org/10.18653/v1/N19-1423", + "name": "BERT: Pre-training of deep bidirectional transformers for language understanding", + "site": "borges-trace" + }, + { + "id": "3831266918557896247", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy", + "author": [ + { + "@type": "Person", + "name": "Charles R. Harris", + "familyName": "Harris", + "givenName": "Charles R." + }, + { + "@type": "Person", + "name": "K. Jarrod Millman", + "familyName": "Millman", + "givenName": "K. Jarrod" + }, + { + "@type": "Person", + "name": "Stéfan J. van der Walt", + "familyName": "van der Walt", + "givenName": "Stéfan J." + }, + { + "@type": "Person", + "name": "Ralf Gommers", + "familyName": "Gommers", + "givenName": "Ralf" + } + ], + "datePublished": "2020-09-16", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7825", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "585", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/s41586-020-2649-2" + }, + "url": "https://doi.org/10.1038/s41586-020-2649-2", + "pagination": "357-362", + "pageStart": "357", + "pageEnd": "362" + }, + "url": "https://doi.org/10.1038/s41586-020-2649-2", + "name": "Array programming with NumPy", + "site": "borges-trace" + }, + { + "id": "7749412358000406009", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming", + "author": [ + { + "@type": "Person", + "name": "Donald E. Knuth", + "familyName": "Knuth", + "givenName": "Donald E." + } + ], + "datePublished": "1984", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "27", + "isPartOf": { + "@type": "Periodical", + "name": "The Computer Journal" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1093/comjnl/27.2.97" + }, + "url": "https://doi.org/10.1093/comjnl/27.2.97", + "pagination": "97-111", + "pageStart": "97", + "pageEnd": "111" + }, + "url": "https://doi.org/10.1093/comjnl/27.2.97", + "name": "Literate programming", + "site": "borges-trace" + }, + { + "id": "4802243956965138517", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/nature14539", + "name": "Deep learning", + "author": [ + { + "@type": "Person", + "name": "Yann LeCun", + "familyName": "LeCun", + "givenName": "Yann" + }, + { + "@type": "Person", + "name": "Yoshua Bengio", + "familyName": "Bengio", + "givenName": "Yoshua" + }, + { + "@type": "Person", + "name": "Geoffrey Hinton", + "familyName": "Hinton", + "givenName": "Geoffrey" + } + ], + "datePublished": "2015-05-28", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "7553", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "521", + "isPartOf": { + "@type": "Periodical", + "name": "Nature" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/nature14539" + }, + "url": "https://doi.org/10.1038/nature14539", + "pagination": "436-444", + "pageStart": "436", + "pageEnd": "444" + }, + "url": "https://doi.org/10.1038/nature14539", + "name": "Deep learning", + "site": "borges-trace" + }, + { + "id": "6985128225961916068", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity", + "author": [ + { + "@type": "Person", + "name": "Juan Maldacena", + "familyName": "Maldacena", + "givenName": "Juan" + } + ], + "datePublished": "1998", + "isPartOf": { + "@type": "PublicationIssue", + "issueNumber": "2", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "2", + "isPartOf": { + "@type": "Periodical", + "name": "Advances in Theoretical and Mathematical Physics" + } + } + }, + "identifier": { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.4310/ATMP.1998.v2.n2.a1" + }, + "url": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "pagination": "231-252", + "pageStart": "231", + "pageEnd": "252" + }, + "url": "https://doi.org/10.4310/ATMP.1998.v2.n2.a1", + "name": "The large N limit of superconformal field theories and supergravity", + "site": "borges-trace" + }, + { + "id": "3378171242671332721", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need", + "author": [ + { + "@type": "Person", + "name": "Ashish Vaswani", + "familyName": "Vaswani", + "givenName": "Ashish" + }, + { + "@type": "Person", + "name": "Noam Shazeer", + "familyName": "Shazeer", + "givenName": "Noam" + }, + { + "@type": "Person", + "name": "Niki Parmar", + "familyName": "Parmar", + "givenName": "Niki" + }, + { + "@type": "Person", + "name": "Jakob Uszkoreit", + "familyName": "Uszkoreit", + "givenName": "Jakob" + } + ], + "datePublished": "2017-06-12", + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.48550/arXiv.1706.03762" + }, + { + "@type": "PropertyValue", + "propertyID": "arXiv", + "value": "1706.03762" + } + ], + "url": "https://doi.org/10.48550/arXiv.1706.03762", + "sameAs": "https://arxiv.org/abs/1706.03762" + }, + "url": "https://doi.org/10.48550/arXiv.1706.03762", + "name": "Attention is all you need", + "site": "borges-trace" + }, + { + "id": "-5400498472277256450", + "schema_json": { + "@context": "https://schema.org", + "@type": "ScholarlyArticle", + "@id": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "author": [ + { + "@type": "Person", + "name": "Mark D. Wilkinson", + "familyName": "Wilkinson", + "givenName": "Mark D." + }, + { + "@type": "Person", + "name": "Michel Dumontier", + "familyName": "Dumontier", + "givenName": "Michel" + }, + { + "@type": "Person", + "name": "IJsbrand Jan Aalbersberg", + "familyName": "Aalbersberg", + "givenName": "IJsbrand Jan" + }, + { + "@type": "Person", + "name": "Gabrielle Appleton", + "familyName": "Appleton", + "givenName": "Gabrielle" + } + ], + "datePublished": "2016-03-15", + "isPartOf": { + "@type": "PublicationVolume", + "volumeNumber": "3", + "isPartOf": { + "@type": "Periodical", + "name": "Scientific Data" + } + }, + "identifier": [ + { + "@type": "PropertyValue", + "propertyID": "DOI", + "value": "10.1038/sdata.2016.18" + }, + { + "@type": "PropertyValue", + "propertyID": "PMID", + "value": "26978244" + }, + { + "@type": "PropertyValue", + "propertyID": "PMCID", + "value": "PMC4792175" + } + ], + "url": "https://doi.org/10.1038/sdata.2016.18", + "sameAs": [ + "https://pubmed.ncbi.nlm.nih.gov/26978244/", + "https://pmc.ncbi.nlm.nih.gov/articles/PMC4792175/" + ], + "pagination": "160018", + "pageStart": "160018" + }, + "url": "https://doi.org/10.1038/sdata.2016.18", + "name": "The FAIR Guiding Principles for scientific data management and stewardship", + "site": "borges-trace" + } +] \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-mcp.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-mcp.json new file mode 100644 index 0000000..3433f87 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-mcp.json @@ -0,0 +1 @@ +{"jsonrpc":"2.0","id":1,"result":{"content":[{"type":"text","text":"{\"message_type\":\"result\",\"results\":[{\"@type\":\"Article\",\"url\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\",\"name\":\"What a bibliography tells machines\",\"site\":\"localhost\",\"siteUrl\":\"localhost\",\"score\":90,\"description\":\"stub ranking\",\"grounding\":{\"schema_object\":{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"datePublished\":\"2026-11-04T05:51:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}],\"citation\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"name\":\"The Semantic Web\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962\",\"name\":\"Labyrinths: Selected stories and other writings\"},{\"@type\":\"Chapter\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962babel\",\"name\":\"The library of Babel\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-cormen2009\",\"name\":\"Introduction to algorithms\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"name\":\"BERT: Pre-training of deep bidirectional transformers for language understanding\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/s41586-020-2649-2\",\"name\":\"Array programming with NumPy\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1093\\\/comjnl\\\/27.2.97\",\"name\":\"Literate programming\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/nature14539\",\"name\":\"Deep learning\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.4310\\\/ATMP.1998.v2.n2.a1\",\"name\":\"The large N limit of superconformal field theories and supergravity\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.48550\\\/arXiv.1706.03762\",\"name\":\"Attention is all you need\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/sdata.2016.18\",\"name\":\"The FAIR Guiding Principles for scientific data management and stewardship\"},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-wporg-handbook\",\"name\":\"Block Editor Handbook\"}]}}}],\"debug\":[{\"step\":\"Decontextualization\",\"raw_query\":\"NumPy\",\"decontextualized_query\":\"NumPy\",\"was_changed\":false},{\"step\":\"Query Fanout\",\"enabled\":false,\"message\":\"Query fanout disabled in settings\"},{\"step\":\"Retrieval\",\"mode\":\"single\",\"query\":\"NumPy\",\"max_results\":20,\"items_found\":1},{\"step\":\"Ranking\",\"items_before\":1,\"items_after\":1,\"top_score\":90}]}"}],"isError":false}} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-ranking-prompts.jsonl b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-ranking-prompts.jsonl new file mode 100644 index 0000000..fae9fc8 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/5-nlweb-wp-ranking-prompts.jsonl @@ -0,0 +1 @@ +{"model":"stub","max_tokens":512,"system":"You are a helpful assistant. Respond ONLY with valid JSON matching this schema: {\"score\":\"integer between 0 and 100\",\"description\":\"short description of the item\"}","messages":[{"role":"user","content":"Assign a score between 0 and 100 to the following item based on how relevant it is to the user's question. Use your knowledge from other sources, about the item, to make a judgement. If the score is above 50, provide a short description of the item highlighting the relevance to the user's question, without mentioning the user's question. If the score is below 75, in the description, include the reason why it is still relevant. The description you generate should be in the same language as the item's description.\n\nThe user's question is: \"NumPy\". The item's description in schema.org format is \"{\"@type\":\"Article\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#article\",\"isPartOf\":{\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/#\\\/schema\\\/person\\\/136ec3c36fa9af648f2fe6e38bb2eda6\"},\"headline\":\"What a bibliography tells machines\",\"wordCount\":292,\"commentCount\":0,\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#respond\"]}],\"citation\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/scientificamerican0501-34\",\"name\":\"The Semantic Web\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962\",\"name\":\"Labyrinths: Selected stories and other writings\"},{\"@type\":\"Chapter\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-borges1962babel\",\"name\":\"The library of Babel\"},{\"@type\":\"Book\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-cormen2009\",\"name\":\"Introduction to algorithms\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.18653\\\/v1\\\/N19-1423\",\"name\":\"BERT: Pre-training of deep bidirectional transformers for language understanding\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/s41586-020-2649-2\",\"name\":\"Array programming with NumPy\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1093\\\/comjnl\\\/27.2.97\",\"name\":\"Literate programming\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/nature14539\",\"name\":\"Deep learning\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.4310\\\/ATMP.1998.v2.n2.a1\",\"name\":\"The large N limit of superconformal field theories and supergravity\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.48550\\\/arXiv.1706.03762\",\"name\":\"Attention is all you need\"},{\"@type\":\"ScholarlyArticle\",\"@id\":\"https:\\\/\\\/doi.org\\\/10.1038\\\/sdata.2016.18\",\"name\":\"The FAIR Guiding Principles for scientific data management and stewardship\"},{\"@type\":\"WebPage\",\"@id\":\"http:\\\/\\\/localhost:8890\\\/what-a-bibliography-tells-machines\\\/#ref-wporg-handbook\",\"name\":\"Block Editor Handbook\"}]}\"."}]} diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/survival.json b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/survival.json new file mode 100644 index 0000000..db31fb1 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/pr-252-pieces/survival.json @@ -0,0 +1,1108 @@ +{ + "1 page HTML (all JSON-LD)": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "2 Yoast graph only": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "3 Yoast aggregator feed": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": true, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": true, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": true, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": true, + "year": null, + "container": true, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4a NLWeb index, crawled page": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "4b NLWeb index, aggregator feed": { + "harris2020": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": true, + "issue": true, + "pages": true, + "doi": true, + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": true, + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": true, + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": true, + "year": true, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": true, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": true, + "year": true, + "container": true, + "volume": null, + "issue": null, + "pages": true, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5 NLWeb WP plugin, MCP answer": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + }, + "5p NLWeb WP plugin, ranking prompt (4,000-char cut)": { + "harris2020": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "lecun2015": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "wilkinson2016": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "knuth1984": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "bernerslee2001": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "maldacena1998": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": false, + "issue": false, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": null, + "_present": true + }, + "vaswani2017": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "devlin2019": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": "id-only", + "isbn": null, + "publisher": false, + "_present": true + }, + "cormen2009": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962": { + "title": true, + "authors": false, + "year": false, + "container": null, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": false, + "publisher": false, + "_present": true + }, + "borges1962babel": { + "title": true, + "authors": false, + "year": false, + "container": false, + "volume": null, + "issue": null, + "pages": false, + "doi": null, + "isbn": null, + "publisher": false, + "_present": true + }, + "wporg-handbook": { + "title": true, + "authors": false, + "year": null, + "container": false, + "volume": null, + "issue": null, + "pages": null, + "doi": null, + "isbn": null, + "publisher": null, + "_present": true + } + } +} \ No newline at end of file diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/probe-questions.md b/tools/yoast-nlweb-trace/results/2026-11-04/probe-questions.md new file mode 100644 index 0000000..64b4c30 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/probe-questions.md @@ -0,0 +1,48 @@ + +### main-as-is + +| Question | 1 | 2 | 3 | 4a | 4b | 5 | 5p | +|---|---|---|---|---|---|---|---| +| Who wrote "Array programming with NumPy", in author order? | yes | no | no | no | no | no | no | +| Which of the cited works came out before 2000? | yes | no | no | no | no | no | no | +| Which cited articles appeared in Nature, and in which volumes? | yes | no | no | no | no | no | no | +| What pages does Knuth's "Literate programming" run to? | yes | no | no | no | no | no | no | +| What is the ISBN of the cited edition of "Introduction to algorithms"? | yes | no | no | no | no | no | no | +| Who published "Labyrinths"? | yes | no | no | no | no | no | no | +| What is the DOI of the BERT paper? | yes | @id | @id | @id | @id | no | no | + +### pr-252-as-is + +| Question | 1 | 2 | 3 | 4a | 4b | 5 | 5p | +|---|---|---|---|---|---|---|---| +| Who wrote "Array programming with NumPy", in author order? | yes | no | no | no | no | no | no | +| Which of the cited works came out before 2000? | yes | no | no | no | no | no | no | +| Which cited articles appeared in Nature, and in which volumes? | yes | no | no | no | no | no | no | +| What pages does Knuth's "Literate programming" run to? | yes | no | no | no | no | no | no | +| What is the ISBN of the cited edition of "Introduction to algorithms"? | yes | no | no | no | no | no | no | +| Who published "Labyrinths"? | yes | no | no | no | no | no | no | +| What is the DOI of the BERT paper? | yes | @id | @id | @id | @id | @id | @id | + +### pr-252-embed + +| Question | 1 | 2 | 3 | 4a | 4b | 5 | 5p | +|---|---|---|---|---|---|---|---| +| Who wrote "Array programming with NumPy", in author order? | yes | yes | yes | yes | yes | yes | no | +| Which of the cited works came out before 2000? | yes | yes | yes | yes | yes | yes | no | +| Which cited articles appeared in Nature, and in which volumes? | yes | yes | yes | yes | yes | yes | no | +| What pages does Knuth's "Literate programming" run to? | yes | yes | yes | yes | yes | yes | no | +| What is the ISBN of the cited edition of "Introduction to algorithms"? | yes | yes | yes | yes | yes | yes | yes | +| Who published "Labyrinths"? | yes | yes | yes | yes | yes | yes | yes | +| What is the DOI of the BERT paper? | yes | yes | yes | yes | yes | yes | no | + +### pr-252-pieces + +| Question | 1 | 2 | 3 | 4a | 4b | 5 | 5p | +|---|---|---|---|---|---|---|---| +| Who wrote "Array programming with NumPy", in author order? | yes | yes | yes | yes | yes | no | no | +| Which of the cited works came out before 2000? | yes | yes | yes | yes | yes | no | no | +| Which cited articles appeared in Nature, and in which volumes? | yes | yes | yes | yes | yes | no | no | +| What pages does Knuth's "Literate programming" run to? | yes | yes | yes | yes | yes | no | no | +| What is the ISBN of the cited edition of "Introduction to algorithms"? | yes | yes | yes | yes | yes | no | no | +| Who published "Labyrinths"? | yes | yes | yes | no | no | no | no | +| What is the DOI of the BERT paper? | yes | yes | yes | yes | yes | @id | @id | diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/survival-main.md b/tools/yoast-nlweb-trace/results/2026-11-04/survival-main.md new file mode 100644 index 0000000..1d06585 --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/survival-main.md @@ -0,0 +1,12 @@ + +## as-is + +| Stage | Works reached | title | authors | year | container | volume | issue | pages | doi | isbn | publisher | Labeled pairs | +|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 page HTML (all JSON-LD) | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 2 Yoast graph only | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 3 Yoast aggregator feed | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 4a NLWeb index, crawled page | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 4b NLWeb index, aggregator feed | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 5 NLWeb WP plugin, MCP answer | 0/12 | 0/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 | 0/2 | 0/5 | 0/78 | +| 5p NLWeb WP plugin, ranking prompt (4,000-char cut) | 0/12 | 0/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 | 0/2 | 0/5 | 0/78 | diff --git a/tools/yoast-nlweb-trace/results/2026-11-04/survival-pr-252.md b/tools/yoast-nlweb-trace/results/2026-11-04/survival-pr-252.md new file mode 100644 index 0000000..710970a --- /dev/null +++ b/tools/yoast-nlweb-trace/results/2026-11-04/survival-pr-252.md @@ -0,0 +1,36 @@ + +## as-is + +| Stage | Works reached | title | authors | year | container | volume | issue | pages | doi | isbn | publisher | Labeled pairs | +|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 page HTML (all JSON-LD) | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 2 Yoast graph only | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 3 Yoast aggregator feed | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 4a NLWeb index, crawled page | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 4b NLWeb index, aggregator feed | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 5 NLWeb WP plugin, MCP answer | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 5p NLWeb WP plugin, ranking prompt (4,000-char cut) | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | + +## embed + +| Stage | Works reached | title | authors | year | container | volume | issue | pages | doi | isbn | publisher | Labeled pairs | +|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 page HTML (all JSON-LD) | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 2 Yoast graph only | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 3 Yoast aggregator feed | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 4a NLWeb index, crawled page | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 4b NLWeb index, aggregator feed | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 5 NLWeb WP plugin, MCP answer | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 5p NLWeb WP plugin, ranking prompt (4,000-char cut) | 4/12 | 4/12 | 4/12 | 4/11 | 2/9 | 1/6 | 1/5 | 2/8 | 1/8 | 2/2 | 3/5 | 24/78 | + +## pieces + +| Stage | Works reached | title | authors | year | container | volume | issue | pages | doi | isbn | publisher | Labeled pairs | +|---|---|---|---|---|---|---|---|---|---|---|---|---| +| 1 page HTML (all JSON-LD) | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 2 Yoast graph only | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 3 Yoast aggregator feed | 12/12 | 12/12 | 12/12 | 11/11 | 9/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 5/5 | 78/78 | +| 4a NLWeb index, crawled page | 12/12 | 12/12 | 11/12 | 11/11 | 8/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 0/5 | 71/78 | +| 4b NLWeb index, aggregator feed | 12/12 | 12/12 | 11/12 | 11/11 | 8/9 | 6/6 | 5/5 | 8/8 | 8/8 | 2/2 | 0/5 | 71/78 | +| 5 NLWeb WP plugin, MCP answer | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | +| 5p NLWeb WP plugin, ranking prompt (4,000-char cut) | 12/12 | 12/12 | 0/12 | 0/11 | 0/9 | 0/6 | 0/5 | 0/8 | 0/8 (+8 in @id) | 0/2 | 0/5 | 12/78 | diff --git a/tools/yoast-nlweb-trace/router.php b/tools/yoast-nlweb-trace/router.php new file mode 100644 index 0000000..b6fd0d7 --- /dev/null +++ b/tools/yoast-nlweb-trace/router.php @@ -0,0 +1,6 @@ + site/wp-content/db.php +cp -r yoast "$p/wordpress-seo" && rm -rf "$p/wordpress-seo/.git" +# Yoast-dist expects the consumer's autoloader; make the plugin its own. +# --no-scripts: its post-autoload-dump script deletes the built DI container. +(cd "$p/wordpress-seo" && COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload -q --no-dev --no-scripts --classmap-authoritative) +cp -r nlweb/code/wordpress/nlweb "$p/nlweb" +ln -sfn "$repo" "$p/bibliography-builder" +mkdir -p site/wp-content/mu-plugins +ln -sf "$here/trace-variants.php" site/wp-content/mu-plugins/trace-variants.php + +cat > site/wp-config.php <<'PHP' + server.log 2>&1 & +php -S localhost:8891 -t "$here/llm-stub" > llmstub.log 2>&1 & +sleep 1 +echo "Site: http://localhost:8890/what-a-bibliography-tells-machines/" diff --git a/tools/yoast-nlweb-trace/site.php b/tools/yoast-nlweb-trace/site.php new file mode 100644 index 0000000..4d1868b --- /dev/null +++ b/tools/yoast-nlweb-trace/site.php @@ -0,0 +1,77 @@ + + * + * @package BibliographyBuilder + */ + +// phpcs:disable WordPress.WP.AlternativeFunctions -- A CLI tool, not plugin code. + +$borges_trace_step = $argv[1] ?? ''; +$_SERVER['HTTP_HOST'] = 'localhost:8890'; + +if ( 'install' === $borges_trace_step ) { + define( 'WP_INSTALLING', true ); +} + +require getenv( 'TRACE_STACK' ) . '/site/wp-load.php'; + +if ( 'install' === $borges_trace_step ) { + require_once ABSPATH . 'wp-admin/includes/upgrade.php'; + if ( ! is_blog_installed() ) { + wp_install( 'Borges trace', 'admin', 'admin@example.org', true, '', wp_generate_password() ); + } + + update_option( 'permalink_structure', '/%postname%/' ); + + // Switched on directly, as Yoast's activation fails when the plugin is + // first loaded from the command line; Yoast runs its setup on the + // next request. + update_option( 'active_plugins', array( 'bibliography-builder/bibliography-builder.php', 'nlweb/nlweb.php', 'wordpress-seo/wp-seo.php' ) ); + echo "installed\n"; + exit; +} + +wp_set_current_user( 1 ); + +// Yoast: schema on (a bare option update would turn it off), and the +// schema aggregation endpoint that NLWeb reads. +$borges_trace_wpseo = get_option( 'wpseo', array() ); +$borges_trace_wpseo['enable_schema'] = true; +$borges_trace_wpseo['enable_schema_aggregation_endpoint'] = true; +update_option( 'wpseo', $borges_trace_wpseo ); + +// NLWeb's WordPress plugin, ranking with the local LLM stub. +update_option( + 'nlweb_settings', + array_merge( + (array) get_option( 'nlweb_settings', array() ), + array( + 'llm_provider' => 'anthropic', + 'api_key' => 'stub', + 'api_endpoint' => 'http://localhost:8891/', + 'model_high' => 'stub', + 'model_low' => 'stub', + 'enable_query_fanout' => false, + ) + ) +); + +$borges_trace_intro = "\n

Every work this essay draws on is listed below, from NumPy and the FAIR principles to Borges's library of Babel.

\n\n\n"; +$borges_trace_post = get_page_by_path( 'what-a-bibliography-tells-machines', OBJECT, 'post' ); +$borges_trace_id = wp_insert_post( + array( + 'ID' => $borges_trace_post ? $borges_trace_post->ID : 0, + 'post_title' => 'What a bibliography tells machines', + 'post_name' => 'what-a-bibliography-tells-machines', + 'post_status' => 'publish', + 'post_author' => 1, + 'post_content' => wp_slash( $borges_trace_intro . file_get_contents( $argv[2] ) ), + ), + true +); + +flush_rewrite_rules(); +echo is_wp_error( $borges_trace_id ) ? $borges_trace_id->get_error_message() : 'post ' . get_permalink( $borges_trace_id ), "\n"; diff --git a/tools/yoast-nlweb-trace/trace-variants.php b/tools/yoast-nlweb-trace/trace-variants.php new file mode 100644 index 0000000..3e60a3a --- /dev/null +++ b/tools/yoast-nlweb-trace/trace-variants.php @@ -0,0 +1,90 @@ + + */ +function borges_trace_full_works( $post ) { + if ( ! $post instanceof WP_Post ) { + return array(); + } + + $page_url = get_permalink( $post ); + $works = array(); + + foreach ( bibliography_builder_collect_blocks( parse_blocks( $post->post_content ) ) as $bibliography ) { + foreach ( $bibliography['citations'] as $citation ) { + $work = bibliography_builder_enrich_json_ld_work( + bibliography_builder_save_csl_to_json_ld( $citation['csl'] ), + $citation['csl'], + (string) $citation['id'], + $page_url + ); + + if ( isset( $work['@id'] ) ) { + $works[ $work['@id'] ] = $work; + } + } + } + + return $works; +} + +add_filter( + 'wpseo_schema_article', + static function ( $data, $context = null ) { + if ( 'embed' !== get_option( 'borges_trace_variant' ) || empty( $data['citation'] ) || ! is_object( $context ) ) { + return $data; + } + + $works = borges_trace_full_works( $context->post ); + + foreach ( $data['citation'] as $i => $ref ) { + if ( isset( $ref['@id'], $works[ $ref['@id'] ] ) ) { + $data['citation'][ $i ] = $works[ $ref['@id'] ]; + } + } + + return $data; + }, + 20, + 2 +); + +add_filter( + 'wpseo_schema_graph', + static function ( $graph, $context = null ) { + if ( 'pieces' !== get_option( 'borges_trace_variant' ) || ! is_object( $context ) ) { + return $graph; + } + + foreach ( borges_trace_full_works( $context->post ) as $work ) { + $graph[] = $work; + } + + return $graph; + }, + 10, + 2 +); diff --git a/tools/yoast-nlweb-trace/variant.php b/tools/yoast-nlweb-trace/variant.php new file mode 100644 index 0000000..c39de58 --- /dev/null +++ b/tools/yoast-nlweb-trace/variant.php @@ -0,0 +1,5 @@ + Date: Wed, 4 Nov 2026 05:56:21 +0000 Subject: [PATCH 2/3] Keep tools/ out of the persistence audit, and update the PHP line count The trace site's setup scripts set WordPress and plugin options on the throwaway site they build. tools/ is not in the release package, so the no-persistence audit now skips it, as the metrics doc says. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01WPtgA2F1J2N3yCPk3cUX1P --- .github/scripts/verify-metrics.sh | 6 ++++-- docs/current-metrics.md | 7 +++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.github/scripts/verify-metrics.sh b/.github/scripts/verify-metrics.sh index 1904db5..0e43c9c 100755 --- a/.github/scripts/verify-metrics.sh +++ b/.github/scripts/verify-metrics.sh @@ -85,11 +85,13 @@ check "JS source lines" "$(doc_value 'JS source')" "$actual_js" # # The doc claims zero persistent settings, options, cron events, CPTs, or custom # tables. That claim underpins the "0 additional queries" runtime figure, so it is -# worth enforcing rather than trusting. +# worth enforcing rather than trusting. tools/ is left out: it is not in the +# release package (.distignore), and the trace site it builds +# (tools/yoast-nlweb-trace) has to configure WordPress and the plugins it tests. persistence_hits="$(grep -rEl \ 'add_option|update_option|register_setting|register_post_type|dbDelta|wp_schedule_event' \ - --include='*.php' . 2>/dev/null | grep -vE 'vendor|tests|node_modules' || true)" + --include='*.php' . 2>/dev/null | grep -vE 'vendor|tests|node_modules|^\./tools/' || true)" if [[ -z "$persistence_hits" ]]; then printf ' ok %-38s NONE\n' "persistence/hook audit" diff --git a/docs/current-metrics.md b/docs/current-metrics.md index bc42b5a..cdcd348 100644 --- a/docs/current-metrics.md +++ b/docs/current-metrics.md @@ -12,7 +12,7 @@ Source and LOC figures last verified: **2026-10-06** against the heading-level b | Metric | Value | Re-derivation command | |---|---|---| | Main plugin file (`bibliography-builder.php`) | **822** | `wc -l bibliography-builder.php` | -| All first-party PHP (excl. vendor, tests, scripts, playground, packages, output, node_modules, generated `build/`) | **17577** | `find . -name '*.php' -not -path './vendor/*' -not -path './node_modules/*' -not -path './tests/*' -not -path './packages/*' -not -path './scripts/*' -not -path './playground/*' -not -path './output/*' -not -path './build/*' -print0 \| xargs -0 wc -l \| tail -1` | +| All first-party PHP (excl. vendor, tests, scripts, playground, packages, output, node_modules, generated `build/`) | **17763** | `find . -name '*.php' -not -path './vendor/*' -not -path './node_modules/*' -not -path './tests/*' -not -path './packages/*' -not -path './scripts/*' -not -path './playground/*' -not -path './output/*' -not -path './build/*' -print0 \| xargs -0 wc -l \| tail -1` | | JS source (`src/`, excl. `*.test.js`) | **13608** | `find ./src -name '*.js' -not -name '*.test.js' -print0 \| xargs -0 wc -l \| tail -1` | | Shipped frontend runtime (`build/view.js`, minified) | **3,183 bytes** | `npm run build` then `wc -c < build/view.js` | @@ -110,9 +110,12 @@ Persistence/hook audit — no persistent settings, options, cron, CPTs, or custo ``` grep -rEl "add_option|update_option|register_setting|register_post_type|dbDelta|wp_schedule_event" \ - --include='*.php' . | grep -vE 'vendor|tests|node_modules' + --include='*.php' . | grep -vE 'vendor|tests|node_modules|^\./tools/' ``` +`tools/` is excluded because it is not in the release package (`.distignore`); the +Yoast/NLWeb trace in `tools/yoast-nlweb-trace/` sets options on the throwaway site it builds. + **One caveat on `wp_options`.** On every store, the plugin's editor-time cache (`bibliography_builder_cache_set()`) calls **both** `wp_cache_set()` and `set_transient()` — they are two independent `if ( function_exists() )` guards, not an object-cache-else-transient From 6b7b5e775dcfe2c45d48cb6c9ef2709628a9ad73 Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 6 Nov 2026 17:27:09 +0000 Subject: [PATCH 3/3] Trace tool: recompute from committed captures; pin #252 for prototypes measure.py read only 1-page.html, which the committed runs replace with 1-page-json-ld.json, so the published tables could not be recomputed without the stack. It now falls back to the extracted JSON-LD and picks Yoast's graph as the block with an @graph. Recomputing all four committed runs reproduces their survival.json byte for byte. The README now says the pr-252 rows need #252's context fix (78947a5 or later) checked out, and keeps the main baseline run separate. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01WPtgA2F1J2N3yCPk3cUX1P --- tools/yoast-nlweb-trace/README.md | 31 +++++++++++++++++++++---- tools/yoast-nlweb-trace/measure.py | 18 ++++++++++---- tools/yoast-nlweb-trace/run-variants.sh | 2 +- 3 files changed, 41 insertions(+), 10 deletions(-) diff --git a/tools/yoast-nlweb-trace/README.md b/tools/yoast-nlweb-trace/README.md index 9048f2b..819e68d 100644 --- a/tools/yoast-nlweb-trace/README.md +++ b/tools/yoast-nlweb-trace/README.md @@ -166,15 +166,36 @@ needs PHP 8.x with `pdo_sqlite`, Python 3.10+, git, and composer: ```sh export TRACE_STACK=/tmp/borges-trace # any empty folder tools/yoast-nlweb-trace/setup.sh # clones, installs, serves :8890 and :8891 -tools/yoast-nlweb-trace/run-variants.sh "$TRACE_STACK/out" # as-is, embed, pieces -python3 tools/yoast-nlweb-trace/probe.py "$TRACE_STACK/out"/*/ +tools/yoast-nlweb-trace/run-variants.sh "$TRACE_STACK/out/main" as-is # today's Borges +python3 tools/yoast-nlweb-trace/probe.py "$TRACE_STACK/out/main"/*/ +``` + +`setup.sh` links this checkout into the site, so the run measures whatever +Borges code is checked out. That baseline is the `main-as-is` row of the +tables. The `pr-252-*` rows need the context fix from #252, because without +it Borges's Yoast filters find no citations in the graph NLWeb's plugin asks +for over REST, and the `embed` prototype has nothing to fill. Run them on a +separate branch with #252 applied (its head when these results were taken, +`78947a5`, or any later commit of `claude/project-thread-6zozsp-yoast-context`): + +```sh +git switch -c trace-252 && git merge 78947a5 +tools/yoast-nlweb-trace/run-variants.sh "$TRACE_STACK/out/pr-252" # as-is, embed, pieces +``` + +`measure.py` can also recompute the committed tables without the stack: + +```sh +python3 tools/yoast-nlweb-trace/measure.py tools/markup-value/corpus.json \ + http://localhost:8890/what-a-bibliography-tells-machines/ \ + tools/yoast-nlweb-trace/results/2026-11-04/*/ ``` `capture.sh OUT_DIR` captures one state of the site. `measure.py` and `probe.py` read captures. `variant.php` sets the `borges_trace_variant` -option that `trace-variants.php` reads (`''`, `embed`, or `pieces`). For the -pre-#252 baseline, check out an older `includes/json-ld-enrichment.php` and -run `run-variants.sh OUT as-is`. +option that `trace-variants.php` reads (`''`, `embed`, or `pieces`). It reads either +the full `1-page.html` that `capture.sh` saves or the `1-page-json-ld.json` +kept in `results/`. Two things to know about the setup: Yoast-dist ships without an autoloader, so `setup.sh` makes one with `composer dump-autoload --no-scripts` (Yoast's diff --git a/tools/yoast-nlweb-trace/measure.py b/tools/yoast-nlweb-trace/measure.py index 9e659d8..c4023a8 100644 --- a/tools/yoast-nlweb-trace/measure.py +++ b/tools/yoast-nlweb-trace/measure.py @@ -154,11 +154,21 @@ def prompt_reach(prompt, stage5): def stage_roots(run): - page = open(os.path.join(run, '1-page.html'), encoding='utf-8').read() - scripts = re.findall(r'', page, re.S) + page_file = os.path.join(run, '1-page.html') + if os.path.exists(page_file): + page = open(page_file, encoding='utf-8').read() + scripts = re.findall(r'', page, re.S) + page_roots = [json.loads(s) for _, s in scripts] + yoast_roots = [json.loads(s) for a, s in scripts if 'yoast-schema-graph' in a] + else: + # Committed runs keep only the page's JSON-LD blocks, in page order + # (results/README note). Yoast prints its graph as the one block with + # an @graph; Borges's ItemList and WebPage blocks have none. + page_roots = json.load(open(os.path.join(run, '1-page-json-ld.json'), encoding='utf-8')) + yoast_roots = [r for r in page_roots if isinstance(r, dict) and '@graph' in r] stages = { - '1 page HTML (all JSON-LD)': [json.loads(s) for _, s in scripts], - '2 Yoast graph only': [json.loads(s) for a, s in scripts if 'yoast-schema-graph' in a], + '1 page HTML (all JSON-LD)': page_roots, + '2 Yoast graph only': yoast_roots, '3 Yoast aggregator feed': [json.loads(l) for l in open(os.path.join(run, '3-yoast-aggregator.ndjson')) if l.strip()], '4a NLWeb index, crawled page': [d['schema_json'] for d in json.load(open(os.path.join(run, '4a-nlweb-crawl-docs.json')))], '4b NLWeb index, aggregator feed': [d['schema_json'] for d in json.load(open(os.path.join(run, '4b-nlweb-aggregator-docs.json')))], diff --git a/tools/yoast-nlweb-trace/run-variants.sh b/tools/yoast-nlweb-trace/run-variants.sh index d005a83..93e2498 100755 --- a/tools/yoast-nlweb-trace/run-variants.sh +++ b/tools/yoast-nlweb-trace/run-variants.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash # Captures and measures the checked-out Borges as it is ("as-is") and with # the two full-record prototypes from trace-variants.php, into OUT_DIR. -# For the pre-#252 baseline, check out an older commit and pass "as-is" only. +# The embed and pieces prototypes need #252's context fix checked out (README, "Running it"). # Usage: TRACE_STACK=… run-variants.sh OUT_DIR [variant ...] set -euo pipefail here="$(cd "$(dirname "$0")" && pwd)"