Trust Txt-Specification-V 1 2
Trust Txt-Specification-V 1 2
net
Version 1.2
of a Reference Document
Published May 20th, 2020.
Introduction
The concept of trust in journalism and all over the web has been under assault, both
from governments trying to destabilize democracy and profiteers who seek financial
gain from exploiting the reputation that legitimate journalists have so carefully built over
the centuries.
While there are many worthwhile efforts to build up a network of trust, some of which
are as old as the publishers themselves, those efforts are largely invisible to search
engines, platforms, advertisers, researchers and others. They exist in the offline world
as associations, cooperatives, and other affiliations based on commonalities, but
modern consumers of current websites don’t get all of the benefit of the work that is
already being done.
This concept seeks to make those offline networks of trust visible online.
The concept of a trust.txt file borrows heavily from two previous very successful
efforts improving the overall experience of the internet: robots.txt and ads.txt.
With both, website publishers are able to create a small and very manageable file that
they have full control over that helps platforms and advertisers improve the overall
ecosystem, and thereby the experience for users. So it will be with trust.txt.
Scope
First, It is not in the scope of this document to define, for example, what is “truth” or to
say who is or is not a journalist.
A key attribute is that the file is posted to the web serving system of the Publisher, thus
proving that the controllers of that website created the file.
Provenance
This project is a new, stand-alone specification from JournalList, but much of the
groundwork for it came from the Certified Content Coalition, a now-dormant
organization. The CCC was an outgrowth of the Innovator In Residence program that is
part of the UpRamp suite of initiatives at CableLabs, the research arm of the cable and
broadband industry based in Colorado. Scott Yates, founder of JournalList.net, was one
of the inaugural group of Innovators In Residence program, and developed an earlier
version of this idea while in that program.
Notices
Document Status
This section describes the status of this document as it exists in current form.
Other documents may supersede this document. Contact JournalList staff or the JournalList to be sure
you are reviewing the current version.
This is a released draft document and may be updated, replaced or obsoleted by other documents at any
time. It is inappropriate to cite this document as other than a work-in-progress.
Commenting
Please make all comments by email to JournalList staff. Please refer to the page number and heading for
each comment.
Conduct
JournalList is a standalone organization, but in general it operates along guidelines developed by other
standards organizations, including the W3C, the IEEE, AFNOR and CableLabs. All comments will be
reviewed by JournalList staff and if any do not meet the general guidelines put forth by other standards
organizations in the opinion of the JournalList staff, those comments will be deleted. Membership
Statement of Openness
For the development of standards, openness and due process are essential.
Openness requires that any person who has, or could be reasonably expected to have an interest, and
who meets the requirements of these procedures, will have a right to participate by:
Agreement
This technical specification is the result of a cooperative effort undertaken at the direction of
JournalList.net, Inc.. You may download, copy, distribute, and reference the documents herein only for the
purpose of developing products or services in accordance with such documents, and educational use.
License
JournalList trust.txt spec by JournalList is licensed under a Creative Commons Attribution-ShareAlike 4.0
International License.
Other Documents
This document may contain references to other documents not owned or controlled by JournalList. Use
and understanding of this document may require access to such other documents. Designing,
manufacturing, distributing, using, selling, or servicing products, or providing services, based on this
document may require intellectual property licenses from third parties for technology referenced in this
document. To the extent this document contains or refers to documents of third parties, you agree to
abide by the terms of any licenses associated with such third-party documents, including open source
licenses, if any.
Disclaimer
This document is furnished on an "AS IS" basis and neither JournalList Inc. nor its members provides any
representation or warranty, express or implied, regarding the accuracy, completeness, non-infringement,
or fitness for a particular purpose of this document, or any document referenced herein. Any use or
reliance on the information or opinion in this document is at the risk of the user, and JournalList and its
members shall not be liable for any damage or injury incurred by any person arising out of the
completeness, accuracy, or utility of any information or opinion contained in the document.
This document is not to be construed to suggest that any company modify or change any of its products
or procedures, nor does this document represent a commitment by JournalList or any of its members to
purchase any service or endorse any content whether or not it meets the characteristics described in the
document. Unless granted in a separate written agreement from JournalList, nothing contained herein
shall be construed to confer any license or right to any intellectual property. This document is not to be
construed as an endorsement of any content, product or company or as the adoption or promulgation of
any guidelines, standards, or recommendations.
Description of roles
For this document, the following words describe specific roles. While these roles are
broadly described, there is an implied trust relationship between organizations that fall
into these respective roles. This trust relationship is typically based on a legal
agreement executed by the respective parties (for example, a membership agreement
or a purchase agreement).
Association Any group of Publishers, as defined by that group. This may include
traditional state-level associations, buying collectives, titles held by
one owner, news-sharing organizations, etc. An Association will
typically have a membership agreement that a Publisher will need
to execute to be considered a member of the Association.
Data Consumer Any organization or individual who ingests data from any
trust.txt file. This may take the form of a crawler, a robot, an
agent, or any automated script. It may also include human users
who want to look at the file using a browser.
This document applies to services that provide resources that clients can access
through URIs as defined in RFC3986. For example, in the context of HTTP, a browser
is a client that displays the content of a web page.
Crawlers are automated clients. Search engines for instance have crawlers to
recursively traverse links for indexing. This specification is not a form of access
authorization.
The Specification
This Reference Document specifies a format for encoding instructions in a plain-text file
available to Data Consumers. Robots may retrieve these instructions before visiting
other URLs on the site. Owners of those robots may use the data to learn about
Associations and other affiliations of a web Publisher. The use of that data is completely
up to the consumer of that data.
Access method
Publishers should post the "/trust.txt" file on their root domain and any subdomains
as needed. For the purposes of this document the “root domain” is defined as the
“public suffix” plus one string in the name. Robots should incorporate Public Suffix list to
derive the root domain.
The declarations must be accessible via HTTP and/or HTTPS from the website that the
instructions are to be applied to under a standard relative path on the server host:
"/trust.txt" and HTTP request header containing "Content-Type:
It is also advisable to prefer HTTPS connections over HTTP when crawling trust.txt
files. In any case where data is available at an HTTPS and an HTTP connection for the
same URL, the data from HTTPS should be preferred.
If the server response indicates Success (HTTP 2xx Status Code,) the Data Consumer
is advised to read the content, parse it, and use the declarations.
If the server response indicates an HTTP/HTTPS redirect (301, 302, 307 status codes),
the Data Consumer should follow the redirect and consume the data as authoritative for
the source of the redirect, if and only if the redirect is within scope of the original root
domain as defined above. Multiple redirects are valid as long as each redirect location
remains within the original root domain. For example an HTTP to HTTPS redirect within
the same root domain is valid.
If the server response indicates the resource is restricted (HTTP 401) the Data
Consumer should seek direct contact with the site for authorization keys or clarification.
Lacking direct contact, the Data Consumer should assume no declarations are being
made under this system.
If the server response indicates the resource does not exist (HTTP Status Code 404),
the Data Consumer can assume no declarations exist. For any other HTTP error
encountered for a URL which the crawler previously found data, the Data Consumer
should assume that previous declarations by the Publisher are no longer valid.
If the trust.txt is unreachable due to server or network errors, this means the file is
undefined and the Data Consumer can assume no declarations exist. For example, in
the context of HTTP, an unreachable trust.txt has a response code in the 500-599
range. For other undefined status codes, the Data Consumer should assume the file
does not exist.
All of the instructions in that standard should be followed. In short, in addition to a path
to the file residing at the root domain, an additional path or redirect should be included
to the file that has the format: foo.com/.well-known/trust.txt
File Format
The instructions are encoded as a formatted plain text object, described here.
The format logically consists of a non-empty set of records, separated by blank lines,
returns, line-feeds or end-of-line command. The records consist of a set of lines of the
form:
Comments are allowed anywhere in the file, and consist of optional whitespace,
followed by a comment character '#' followed by the comment, terminated by the
end-of-line.
File Content
Not all of the lines here need to be used, but all of them are available. All Fields can be
used more than once. For instance, an Association will in nearly all cases have many
members. Each one will get its own line in the file. All Data Consumers should store all
valid data with each URI.
Note that there is no distinction in the file between Publishers and Associations. This is
by design. An organization may both have members, and be a member of other
Associations.
The <VARIABLE> is a string identifier without internal whitespace. The only supported
separator is the equals sign ‘=’. The <VALUE> is an open string that may contain
arbitrary data.
The declaration line is terminated by the end-of-line marker. The Data Consumer should
liberally interpret CR, CRLF, etc., as a line separator. For human readability it is
recommended that variables be declared at the end of the file, but this is not a strict
requirement and should not be assumed.
Expiration
Data Consumers may independently store files, but if they do it is recommended that
they regularly verify their own cache. Standard HTTP cache-control mechanisms can be
used by both origin server and robots to influence the caching of the trust.txt file.
Specifically consumers and replicators should take note of HTTP Expires header set
by the origin server.
Limits
Crawlers may impose a parsing limit, but it is recommended that the limit be at least 500
kibibytes (KiB).
Where to put it
The short answer: in the top-level directory of your web server.
The longer answer: When a robot looks for the "/trust.txt" file for URL, it strips the
path component from the URL (everything from the first single slash), and puts
"/trust.txt" in its place.
So, as a web site owner you need to put it in the right place on your web server for that
resulting URL to work. Usually that is the same place where you put your web site's
main "index.html" welcome page. Where exactly that is, and how to put the file there,
depends on your web server software.
Remember to use all lower case for the filename: "trust.txt", not "Trust.TXT.”
Another example is a local, independent newsroom that is part of a chain that uses one
URL, for example www.bizjournals.com. In that case it will be up to the Publisher to
have all trust.txt information in one file, or to set up individual URIs for each
publication. Either one is acceptable.
That said, while the intention of the trust.txt system is to increase the trust of
legitimate Publishers, the existence of a file on a site should not be regarded a priori as
The platforms and social networks must weigh for themselves the trustworthiness of any
individual Publisher or Association.
The goal of this Reference Document and the underlying framework is to make the
inference of trust by affiliation much more accessible and scalable.
In other words, if a publisher says that it belongs to an association, but that association
does not publish a trust.txt file confirming that the publisher is indeed a member,
the strength of that signal may be lost, or even become negative. If a publisher feels
participation in an association is a positive signal, that organization should strongly
encourage the association to publish its own trust.txt file.
Examples of Files
These examples (created by JournalList, so data is not accurate) are examples of files
that would be generated by individual organizations that would be placed on their own
URL and controlled by them.
This the file that might be created by a Publication, The Durango Herald, of Colorado:
This is the file that might be created by a Publication that is owned by the owner of The
Durango Herald, but does not have any other association memberships. This example,
taken from the Herald’s file, is called Adventure Pro Magazine:
This is the (shortened) file that might be created by an Association, The Colorado Press
Association:
member=https://www.hearst.com/
member=https://scripps.com/
member=https://www.jsonline.com/
member=https://www.swiftcom.com/
member=https://www.spokesman.com/
member=https://www.nytimes.com/
member=https://www.ogdennews.com/
social=https://www.facebook.com/APNews
social=https://www.instagram.com/apnews/
social=https://twitter.com/ap
social=https://www.linkedin.com/company/associated-press
social=https://www.youtube.com/ap
contact=https://www.ap.org/contact-us/
Reviewers
Many thanks to these people who reviewed this document. (Reviewing does not imply
endorsement):
Claire Wardle, First Draft News; Ralph Brown; John Daniszewski, Heather Edwards,
Associated Press; Tom Brand, NAFB; Justin Sasso, Colo. Association of Broadcasters,
Mickey Osterreicher, NPPA; Bill Skeet and Cedar Milazzo, Trustie; Sandro Hawke, W3C
fellow; Jill Fraschman, Colo. Press Association; Connie Moon Sehat, NewsQ/Credibility
Coalition; Gabriel Altay, Kensho; Sean La Roque-Doherty lawyer, writer and IEEE
P.7011 participant; Andres Rodriguez, Instituto Tecnológico de Buenos Aires (ITBA) and
IEEE P.7011 participant; Brendan Quinn, IPTC; Scott Cunningham original ads.txt
JournalList.net trust.txt Specification — Page 15
advisor; Ed Bice, Scott Hale and Megan Marrelli, Meedan; Jason Kint, Chris Pedigo,
Digital Content Next; Kati London, Microsoft; Vinny Green, Snopes.
References
Robots.txt Exclusion Protocol https://tools.ietf.org/html/draft-koster-rep-01
Ads.txt
https://iabtechlab.com/wp-content/uploads/2019/03/IAB-OpenRTB-Ads.txt-Public-Spec-
1.0.2.pdf
Schema.org