A knowledge graph, built on NASA patent data

Can this company use this patent? Get the answer, with the evidence.

When NASA licenses an invention to a company, someone must check five separate records first. GoNoGo runs those checks in under two seconds, then shows what it found and where each fact came from.

97.5%right on 200 test questions
0licenses wrongly approved in those tests
7fixed rules decide each answer
1.6 smedian time to an answer

Start here

What is this about?

NASA invents things. Companies want to use them. A license is the permission, and granting one takes care.

1

NASA patents its inventions

A patent is a legal right to an invention. NASA's public list names 1,393 patents and applications, from materials to sensors.

2

Companies ask for licenses

A license lets a company use a patent for one purpose, in one place, for a set time. An exclusive license means no one else may.

3

Someone checks before saying yes

The same invention cannot be promised exclusively to two companies for the same use, so the office checks five things first.

4

A missed check is costly

The error that costs most is approving a license that should have been blocked, because nothing flags it.

One request, in the sentence GoNoGo reads
Orbital Lens Works, Inc. wants a non-exclusive license to NASA case LEW-17915-1 for optical communications in United States from January 1, 2027 to December 31, 2031.

The company is fictional. The case number is a real NASA invention. GoNoGo's answer is GO: the patent is in force, no grant overlaps, export is unrestricted, and the ownership record is complete with no co-owners.

A clearance means five checks.

Before anyone says yes, someone must confirm each of these:

1

Is the patent still alive?

Fees go unpaid and terms end. A snapshot can still say "in force" after the patent has lapsed.

2

Is it already licensed for this?

Same use, same territory, overlapping dates. A broader grant covers a narrower request.

3

Is a public notice still open?

NASA must announce an exclusive license and wait for objections before it can sign.

4

May this country receive it?

Export control can forbid the technology from reaching the licensee's country.

5

Have all co-owners agreed?

When a university or company co-owns the patent, every co-owner must consent. A missing record is not a yes.

Why it is hard

The facts live in different places, and the places disagree.

Each check needs a different source, and each source writes things its own way. Two real notices name the same company as "GenH2" and "GenH2 Corporation". A field of use might be "optics" in one record and "lasers" in another, and the second is narrower than the first.

NASA's patent list1,393 patents and applications, with dates and a status, as of one snapshot.
USPTO recordsThe legal status: granted, lapsed for unpaid fees, or ended.
Federal Register noticesNASA's public notices of intent to license. 92 since 2018.
Technical reportsNASA papers about each invention. 172 are linked to patents here.
Agreements, ownership, export recordsNot published. We generated them and label every one as synthetic.

What the real data showed

181 of 263 Patents that NASA's list calls "in force" but USPTO shows lapsed for unpaid fees. NASA's list keeps showing an expiration date a median of 9.4 years after the lapse.
208 of 260 Patents that NASA's list shows as applications, which USPTO has since granted.
24 of 92 Public notices that say what the license is for. Most say nothing about the intended use.

A system that trusted any single source would give wrong answers. So GoNoGo records where every fact came from, and when two sources disagree about a patent's status, the USPTO record wins.

The technology

A knowledge graph: facts a computer can check.

A spreadsheet stores values. A knowledge graph stores facts and the relationships between them, along with a written definition of what each kind of thing means. That written definition is called an ontology.

Grant 17 Patent is about

A fact is a short sentence

"Grant 17 is about this patent." Each fact joins two things with a relationship. Join enough facts and you have a graph.

Grant Patent Licensee Field Territory

Each word gets one meaning

The ontology defines the kinds of things (patent, grant, licensee, field of use) and how they connect. GoNoGo's defines 48, so every source maps onto the same words.

Optics Lasers Lenses and mirrors

Broad covers narrow

Fields and territories form a family tree. A license for optics covers a request about lasers, and one for North America covers the United States. The graph states this once, and every rule uses it.

Recorded:no co-owners No record:unknown

No record is not a "no"

If nobody recorded the co-owners, they are unknown, not absent. The graph keeps "unknown" as its own state, so a missing fact can never turn into a yes.

true in the world: 2025 to 2034 learned 15 Jan 2026 source: clause 4

Every fact has two times and a source

When it was true in the world, when the system learned it, and where it came from. That lets GoNoGo rerun any past decision and get the same answer.

And where does a language model fit?

Models read messy sentences well and apply rules inconsistently (the benchmark below measures this). So in GoNoGo a model may read a question or propose a fact. Fixed rules decide, and a person approves any new fact.

New to ontologies? Read the guide that assumes no background

The answer

Ask in plain words. Get one verdict and the evidence for it.

Write the request as a sentence that names the licensee, patent, license type, use, place, and dates. GoNoGo runs the seven checks and gives one of five answers.

GOEvery check that applies passed.
NO GOA check failed, such as an overlapping exclusive grant.
HOLDA notice window is still open. Wait.
COUNSELA person with legal judgment must decide.
NO DATAA fact is missing, so GoNoGo does not guess.

A missing fact is not a yes. If no ownership record exists, the answer is NO DATA, not GO.

A verdict card: the rule that decided, the facts it read, and where each came from
A verdict card reading COUNSEL, with the seven rule results and the co-owner consent finding that caused it

How it works

Source documents become a knowledge graph. Seven fixed rules read it, and no model decides a verdict.

1

It reads the question

The parser turns the words into a patent, a license type, a use, a place, and dates. It lists anything it cannot find as missing.

A question with each part underlined: licensee, patent, license type, field, territory, and dates
2

Seven rules decide

Each rule asks the knowledge graph a fixed question. The same request on the same records gives the same answer, every time.

The ontology graph with one class selected: its definition, the rules that read it, and the relationships that light up
3

Every answer shows its proof

Each fact records its source, who approved it, and when the system learned it. A past decision can be rerun exactly.

The provenance graph of one approved fact: the approval, its proposer, and the patent it concerns

How it was built

Five stages, each ending with a written report and a pause for approval.

Here is what each stage did, and what went wrong or surprised us along the way.

  1. 0

    Gather the real data

    Five public sources were pulled and every raw response kept with its date. From them we chose 300 patents across three NASA centers (Langley, Glenn, and Kennedy) and every notice that names one.

    What we found. The stale statuses and missing details described above. NASA does not publish agreements, ownership records, or export classifications, so a generator wrote 120 fictional agreements and 45 test cases. Each case has an answer written by hand, and every synthetic fact is labeled.

  2. 1

    Write the questions, then the model

    Before drawing a single class, we wrote 15 questions the system must be able to answer. Then came the ontology, the word lists for fields and territories, and shapes that check incoming data. A reasoner tests the whole model for contradictions.

    What we learned. Two kinds of check catch different mistakes. A grant that named a country where a field of use belongs passed the shape check and was caught by the contradiction check, so every build runs both.

  3. 2

    Build the rules and the loop

    Seven rules, a combiner that turns their results into one verdict, a parser for the question, matching of company names, and a queue where a steward approves new facts. A public demo ran the whole loop in a browser.

    What we learned. A wrong approval is acted on exactly like a right one. In the demo, approving a record that left out a co-owner changed the verdict from COUNSEL to GO. Nothing in the engine could catch that, which led to the two-person rule.

  4. 3

    Make it safe, then run it for real

    Policies decide who may do what, and an approval that conflicts with the record or would raise a verdict waits for counsel. Tests tried to leak confidential royalty terms and to plant instructions inside agreements. The system then ran on AWS with real sign-in, passed 11 live checks, and was torn down.

    What we learned. No model obeyed a planted instruction in 36 tries. That is a small sample, and the write-up says what it does and does not prove.

  5. 4

    Test it against a language model

    200 questions went to four ways of answering. A second database, built for graphs of a different kind, ran the same overlap rule in its own language. A workflow now reads an agreement PDF, extracts a grant, and waits for a steward.

    What we learned. A model that was given the right facts still got the answer wrong 27.5% of the time. And when the second database was loaded with a wrong identifier, it returned nothing and only logged a warning, where the first database's checks would have stopped the load.

Why it was built this way

Six choices, and the reason for each.

Write the questions first

Because a model of the world should answer real questions. A class that no question needs gets cut.

A missing fact is never a yes

Because otherwise a patent nobody checked would be approved. The answer for a missing fact is NO DATA.

A model reads. Fixed rules decide.

Because the benchmark showed that models misapply a rule even when they hold the right facts. The same rules give the same answer every time.

Every fact keeps its times and its source

Because a decision must be explainable and repeatable months later, and an auditor must be able to rerun it.

A second person for risky approvals

Because the first demo showed that one wrong approval could change a verdict. People are fallible, so the system asks for a second.

Confidential terms stay in their own graph

Because royalty terms must never leak. Only one role may read them, and every export and demo leaves them out.

The proof

We tested it against a language model given the same facts. The model was wrong more than a quarter of the time.

Two hundred clearance questions went to four ways of answering, scored against verdicts fixed by hand when each case was planted. All four had the same facts.

GoNoGoa model reads the question, the rules decide
97.5%
Graph agenta model with exact retrieval, applying the policy itself
72.5%
Rules onlysafe, but reads only the formal wording
50.5%
Vector searchsimilar-sounding passages, then a model
20.5%
32false GOs: graph agentAnswered GO on 32 questions where the right answer was not GO, even with the right records in hand.
14false GOs: vector searchIt found the right patent records only 36% of the time.
0false GOs: GoNoGoThe build fails if it ever makes one.

The agent cited the deciding agreement 91% of the time and still misapplied the rule. The model reads. The rules decide.

The questions are synthetic and few: 45 planted cases, each asked four ways, plus 20 that cannot be answered as asked. They test every rule and its hard edges, but they were written by the same project that wrote the rules. One model (Claude Haiku 4.5) was used throughout. Read the method, the failures, and the limits.

Built for the people who sign off

Risky changes need a second person. Everything leaves a trail.

A model may propose a fact. Only people approve it, and the system requires a second approver when one is not enough.

A steward's approval held for counsel, with the reason shown
1. A steward approves. The fact conflicts with an approved record and would raise a verdict to GO, so the approval waits. Nothing changes yet.
Counsel's second review moves the verdict from COUNSEL to GO and highlights the rule that changed
2. Counsel agrees. Only now does the verdict move, and the rule that changed is highlighted. Nobody approves what they proposed.
A grid of who may do what: each of six roles against twenty-one actions, decided by Cedar policies
Who may do what. Twenty-one Cedar policies answer for six roles. "Approve a conflicting fact alone" is empty for every role on purpose.
Agreements in

A PDF becomes a proposal, not a fact

Textract reads it, fixed patterns extract the grant, SHACL checks it, and a workflow waits for a steward. A planted instruction inside an agreement changed no verdict.

Who sees what

Six roles, four graphs

Cedar policies decide which role may read which graph. Royalty terms never leave their own graph and are excluded from every export and demo.

Audit

Signed and replayable

Every decision stores its cutoff, release, facts, and a signature, with a locked copy. An auditor reruns it and gets the identical answer.

For the practitioner

The ontology holds the knowledge, so the rules stay short.

The classes and properties are defined in the ontology file, and sixteen written modeling decisions explain the choices behind them. Fifteen competency questions, written before the model, check that it can answer what the rules ask.

48classes
27object properties
59data properties
OWL 2SKOS vocabulariesSHACL shapesPROV-O provenance SPARQL templatesBitemporal factsNamed graphsHermiT + ROBOT in CI
Select a class and its relationships flow along their arrows

Architecture

One engine runs in two places: a public demo that needs no cloud account, and an AWS deployment.

Seven views, drawn with the AWS icon set. The graph sits in a VPC with no route to the internet, and only two functions may write to it. Click a diagram to enlarge it.

Numbers follow one clearance question from the browser to a stored, signed decision.

Watch

The five-minute tour

The ontology, the trail behind a fact, the path to a verdict, the AWS design, and the benchmark. Captions included.

Beyond patents

The architecture carries over. The patent rules do not.

A studio clearing a film for streaming asks a question of the same shape: who holds which rights, where, and when, and does a new request collide with an existing grant?

Carries over

  • An ontology written from the questions people ask
  • Vocabularies for territories and media, so a broad grant covers a narrow one
  • A missing fact is never a yes
  • Facts with two times and a source clause
  • Confidential terms in their own graph
  • Rules decide, a model only reads
  • Two people for risky approvals, and decisions that can be rerun

Stays behind

  • Patent term and fee lapses become copyright term and chain of title
  • The co-exclusive cap becomes windows, holdbacks, and matching rights
  • The federal notice window has no private-deal equivalent
  • Export control becomes sanctions and geo-blocking
  • Co-owner consent becomes consent by territory and medium