<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <meta name="description" content="Home page of The Apache Software Foundation">
  <link rel="apple-touch-icon" sizes="57x57" href="/favicons/apple-touch-icon-57x57.png">
  <link rel="apple-touch-icon" sizes="60x60" href="/favicons/apple-touch-icon-60x60.png">
  <link rel="apple-touch-icon" sizes="72x72" href="/favicons/apple-touch-icon-72x72.png">
  <link rel="apple-touch-icon" sizes="76x76" href="/favicons/apple-touch-icon-76x76.png">
  <link rel="apple-touch-icon" sizes="114x114" href="/favicons/apple-touch-icon-114x114.png">
  <link rel="apple-touch-icon" sizes="120x120" href="/favicons/apple-touch-icon-120x120.png">
  <link rel="apple-touch-icon" sizes="144x144" href="/favicons/apple-touch-icon-144x144.png">
  <link rel="apple-touch-icon" sizes="152x152" href="/favicons/apple-touch-icon-152x152.png">
  <link rel="apple-touch-icon" sizes="180x180" href="/favicons/apple-touch-icon-180x180.png">
  <link rel="icon" type="image/png" href="/favicons/favicon-32x32.png" sizes="32x32">
  <link rel="icon" type="image/png" href="/favicons/favicon-194x194.png" sizes="194x194">
  <link rel="icon" type="image/png" href="/favicons/favicon-96x96.png" sizes="96x96">
  <link rel="icon" type="image/png" href="/favicons/android-chrome-192x192.png" sizes="192x192">
  <link rel="icon" type="image/png" href="/favicons/favicon-16x16.png" sizes="16x16">
  <link rel="manifest" href="/favicons/manifest.json">
  <link rel="shortcut icon" href="/favicons/favicon.ico">
  <meta name="msapplication-TileColor" content="#603cba">
  <meta name="msapplication-TileImage" content="/favicons/mstile-144x144.png">
  <meta name="msapplication-config" content="/favicons/browserconfig.xml">
  <meta name="theme-color" content="#282661">

  <title>Process Overview For Policing Apache Brands</title>
  <link href="/css/Montserrat-300-600.css" rel="stylesheet">
  <link href="/css/min.bootstrap.css" rel="stylesheet">
  <link href="/css/styles.css" rel="stylesheet">
  <style>
.headerlink {
  visibility: hidden;
}
dt:hover > .headerlink, p:hover > .headerlink, td:hover > .headerlink, h1:hover > .headerlink, h2:hover > .headerlink, h3:hover > .headerlink, h4:hover > .headerlink, h5:hover > .headerlink, h6:hover > .headerlink {
  visibility: visible
}  </style>

<!-- https://www.apache.org/licenses/LICENSE-2.0 -->
</head>

<body >
  <!-- Navigation -->
  <header>
	<div id="skiptocontent">
		<a href="#maincontent">Skip to Main Content</a>
	</div>
    <nav class="navbar navbar-inverse navbar-fixed-top mainmenu">
      <div class="container">
        <div class="navbar-header">
          <button class="navbar-toggle" type="button" data-toggle="collapse" data-target="#mainnav-collapse">
            <span class="sr-only">Toggle navigation</span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </button>
        </div>
        <div class="collapse navbar-collapse" id="mainnav-collapse">
          <ul class="nav navbar-nav navbar-justified">
            <li><a href="/index.html#news">News</a></li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">About&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="/foundation">Overview</a></li>
                <li><a href="/foundation/how-it-works.html">Process</a></li>
                <li><a href="/foundation/governance/">Governance</a></li>
                <li><a href="/theapacheway/index.html">The Apache Way</a></li>
                <li><a href="/foundation/governance/members.html">Membership</a></li>
                <li><a href="https://community.apache.org/">Community</a></li>
                <li><a href="https://diversity.apache.org/">Diversity & Inclusion</a></li>
                <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                <li><a href="/foundation/glossary.html">Glossary</a></li>
				  <li><a href="/apache-name">About Our Name</a></li>
                <li><a href="/foundation/preFAQ.html">FAQ</a></li>
                <li><a href="/foundation/contributing.html">Support Apache</a></li>
                <li><a href="/press/">Media/Analysts</a></li>
                <li><a href="/foundation/contact.html">Contact</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Make a Donation&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="/foundation/contributing.html">Donate Now</a></li>
                <li><a href="https://donate.apache.org/">&nbsp;&nbsp;Via Credit Card</a></li>
                <li><a href="https://donate.apache.org/">&nbsp;&nbsp;Via ACH</a></li>
                <li><a href="https://donate.apache.org/">&nbsp;&nbsp;Via PayPal</a></li>
                <li><a href="https://www.redbubble.com/people/comdev">Buy Swag</a></li>
                <li><a href="https://smile.amazon.com/gp/chpf/homepage/ref=smi_se_scyc_srch_stsr?q=apache+software+foundation&orig=%2F">Shop smile.amazon.com</a></li>
                <li><a href="/foundation/sponsorship.html">ASF Sponsorship</a></li>
                <li><a href="/foundation/thanks#targeted-sponsors">Targeted Sponsorship</a></li>
                <li><a href="/foundation/contributing.html#CorporateGiving">Corporate Giving</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdopwn-toggle" data-toggle="dropdown">The Apache Way&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="/theapacheway/index.html">The Apache Way</a></li>
                <li><a href="https://s.apache.org/GhnI">Sustainable Open Source</a></li>
                <li><a href="/foundation/how-it-works.html">How it Works</a></li>
                <li><a href="/foundation/how-it-works.html#meritocracy">Merit</a></li>
                <li><a href="https://blogs.apache.org/foundation/category/SuccessAtApache">Success at Apache</a></li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdopwn-toggle" data-toggle="dropdown">Join Us&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="https://community.apache.org/gettingStarted/101.html">Getting Started</a></li>
                <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
                <li><a href="https://www.apachecon.com/">ApacheCon</a></li>
                <li><a href="http://community.apache.org/calendars/">Community Events</a></li>
                <li><a href="/travel/">Travel Assistance</a></li>
                <li><a href="https://community.apache.org/gsoc.html">Summer of Code</a></li>
                <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                <li><a href="https://community.apache.org/contributors/etiquette">Etiquette</a></li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Projects&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/index.html#projects-list">Project List</a></li>
                    <li><a href="/foundation/how-it-works.html#management">How they work</a></li>
                    <li><a href="https://community.apache.org/projectIndependence.html">Independence</a></li>
                    <li><a href="https://projects.apache.org/committees.html?date">Date Founded</a></li>
                    <li><a href="https://projects.apache.org/projects.html?name">Names</a></li>
                    <li><a href="https://projects.apache.org/projects.html?category">Categories</a></li>
                    <li><a href="https://projects.apache.org/projects.html?language">Languages</a></li>
                    <li><a href="https://projects.apache.org/statistics.html">Statistics</a></li>
                    <li><a href="https://incubator.apache.org/">Apache Incubator</a></li>
                    <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
                    <li><a href="/foundation/marks/">Brand Management</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">People&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/foundation/how-it-works.html#roles">Roles</a></li>
                    <li><a href="/foundation/members.html">Members</a></li>
                    <li><a href="https://community.apache.org/contributors/">Committers</a></li>
                    <li><a href="/foundation/#who-runs-the-asf">Board of Directors</a></li>
                    <li><a href="/foundation/#who-runs-the-asf">Officers  &amp; Project VPs</a></li>
                    <li><a href="https://community.zones.apache.org/map.html">Location Map</a></li>
                    <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                    <li><a href="https://people.apache.org/">Committer Directory</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Community&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="https://community.apache.org/about/">Community Development</a></li>
                    <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
                    <li><a href="https://community.apache.org/">Get Involved</a></li>
                    <li><a href="https://community.apache.org/mentoringprogramme.html">Mentoring</a></li>
                    <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
                    <li><a href="https://community.apache.org/calendars/">Community Events</a></li>
                    <li><a href="https://community.apache.org/newbiefaq.html">FAQ</a></li>
                    <li><a href="https://community.apache.org/lists.html">Mailing Lists</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Infrastructure&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/dev/infrastructure.html">Infra overview</a></li>
                    <li><a href="https://infra.apache.org/" target="_blank">Policies and Tools</a></li>
                    <li><a href="https://cwiki.apache.org/confluence/display/INFRA/Index" target="_blank">CWiki</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">License&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/licenses/LICENSE-2.0">Apache License 2.0</a></li>
                    <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
                    <li><a href="/licenses/contributor-agreements.html">Contributor License Agreements</a></li>
                    <li><a href="/licenses/contributor-agreements.html#grants">Software Grants</a></li>
                    <li><a href="/foundation/marks/list/">Trademarks</a></li>
					<li><a href="/licenses/exports/">Exports</a></li>
                  </ul>
                </li>
                <li class="dropdown dropdown-submenu visible-xs">
                  <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Sponsors&nbsp;<span class="caret"></span></a>
                  <ul class="dropdown-menu" role="menu">
                    <li><a href="/foundation/sponsorship.html">Sponsor the ASF</a></li>
                    <li><a href="/foundation/thanks">Sponsor Thanks</a></li>
                    <li><a href="/foundation/contributing.html#CorporateGiving">Corporate Giving</a></li>
                    <li><a href="/foundation/contributing.html">Individual Donations</a></li>
                    <li><a href="https://www.redbubble.com/people/comdev/">Buy Stuff</a></li>
                  </ul>
                </li>
              </ul>
            </li>
            <li class="dropdown">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Downloads&nbsp;<span class="caret"></span></a>
              <ul class="dropdown-menu" role="menu">
                <li><a href="https://downloads.apache.org/">Distribution</a></li>
                <li><a href="https://projects.apache.org/releases.html">Releases</a></li>
                <li><a href="https://status.apache.org/">Infrastructure Status</a></li>
                <li><a href="/uptime/">Infrastructure Statistics</a></li>
              </ul>
            </li>
            <li class="dropdown hidden-xs">
              <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button"><span class="glyphicon glyphicon-search"
                  aria-hidden="true"></span><span class="sr-only">Search</span></a>
              <ul class="dropdown-menu search-form" role="search">
                <li>
                  <div class="input-group" style="width: 100%; padding: 0 5px;">
                    <script async src="https://cse.google.com/cse.js?cx=cb41d2753d228d8b7"></script>
                    <div class="gcse-search"></div>
                  </div>
                </li>
              </ul>
            </li>
          </ul>
        </div>
      </div>
    </nav>
  </header>
  <!-- / Navigation -->
  <header id="main-header" class="container">
    <div class="sideImg">
          <a class="visible-home" href="https://events.apache.org/x/current-event.html">
            <img class="img-responsive" style="width: 125px;" src="/events/current-event-125x125.png" alt="Apache Events"/>
<!-- STALE: <img class="img-responsive" style="width: 125px;" src="https://www.apachecon.com/event-images/default-square-light.png" alt="ApacheCon 2021 Coming Soon!" /> -->
          </a>
      <a class="hidden-home" href="/"><img class="img-responsive" src="/img/asf-estd-1999-logo.jpg" alt="The Apache Software Foundation"></a>
    </div>
    <div class="main">
      <img class="img-responsive center-block visible-home" src="/img/asf-estd-1999-logo.jpg" alt="Apache 20th Anniversary Logo">

      <ul class="nav navbar-nav navbar-justified">
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Projects&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/index.html#projects-list">Project List</a></li>
            <li><a href="/foundation/how-it-works.html#management">How they work</a></li>
            <li><a href="https://community.apache.org/projectIndependence.html">Independence</a></li>
            <li><a href="https://projects.apache.org/committees.html?date">Date Founded</a></li>
            <li><a href="https://projects.apache.org/projects.html?name">Names</a></li>
            <li><a href="https://projects.apache.org/projects.html?category">Categories</a></li>
            <li><a href="https://projects.apache.org/projects.html?language">Languages</a></li>
            <li><a href="https://projects.apache.org/statistics.html">Statistics</a></li>
            <li><a href="https://incubator.apache.org/">Apache Incubator</a></li>
            <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
            <li><a href="/foundation/marks/">Brand Management</a></li>
            <li><a href="/foundation/glossary.html">Glossary of Terms</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">People&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/foundation/how-it-works.html#roles">Roles</a></li>
            <li><a href="/foundation/members.html">Members</a></li>
            <li><a href="https://community.apache.org/contributors/">Committers</a></li>
            <li><a href="/foundation/#who-runs-the-asf">Board of Directors</a></li>
            <li><a href="/foundation/#who-runs-the-asf">Officers &amp; Project VPs</a></li>
            <li><a href="https://diversity.apache.org/">Diversity & Inclusion</a></li>
            <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
            <li><a href="https://people.apache.org/">Committer Directory</a></li>
            <li><a href="https://community.zones.apache.org/map.html">Heat Map</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Community&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="https://community.apache.org/about/">Community Development</a></li>
            <li><a href="/foundation/policies/conduct">Code of Conduct</a></li>
            <li><a href="https://community.apache.org/">Get Involved</a></li>
            <li><a href="https://community.apache.org/mentoringprogramme.html">Mentoring</a></li>
            <li><a href="https://helpwanted.apache.org/">Help Wanted</a></li>
            <li><a href="https://community.apache.org/calendars/">Community Events</a></li>
            <li><a href="https://community.apache.org/newbiefaq.html">FAQ</a></li>
            <li><a href="https://community.apache.org/lists.html">Mailing Lists</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Infrastructure&nbsp;<span class="caret"></span></a>
          <ul class="dropdown-menu" role="menu">
              <li><a href="/dev/infrastructure.html">Infra overview</a></li>
              <li><a href="https://infra.apache.org/" target="_blank">Policies and Tools</a></li>
              <li><a href="https://cwiki.apache.org/confluence/display/INFRA/Index" target="_blank">CWiki</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">License&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/licenses/LICENSE-2.0">Apache License 2.0</a></li>
            <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
            <li><a href="/licenses/contributor-agreements.html">Contributor License Agreements</a></li>
            <li><a href="/licenses/contributor-agreements.html#grants">Software Grants</a></li>
            <li><a href="/foundation/marks/list/">Trademarks</a></li>
			<li><a href="/licenses/exports/">Exports</a></li>
          </ul>
        </li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button">Sponsors&nbsp;<span class="caret hidden-sm"></span></a>
          <ul class="dropdown-menu" role="menu">
            <li><a href="/foundation/sponsorship.html">Sponsor the ASF</a></li>
            <li><a href="/foundation/thanks">Sponsor Thanks</a></li>
            <li><a href="/foundation/contributing.html#CorporateGiving">Corporate Giving</a></li>
            <li><a href="/foundation/contributing.html">Individual Donations</a></li>
            <li><a href="https://www.redbubble.com/people/comdev/">Buy Stuff</a></li>
          </ul>
        </li>
      </ul>
    </div>
 
  </header>
  <main id="maincontent">
<div class="container">    <p>This Process Overview For Policing Apache Brands is a simple turnkey
way that Apache&reg; project PMCs can police use of their
own trademarks and respond to questions about use of their brand.
This document is focused on Apache committers
and PMC members; outside parties should start with our
<a href="//www.apache.org/foundation/marks/">Apache Trademark Policy</a>.</p>
<p>To ensure that the ASF is able to continue to use our existing trademarks
to refer to our own software projects and communities, we need a process
that allows us to address infringements of our trademarks by others.</p>
<p><strong>DRAFT DRAFT DRAFT</strong> This is a proposed draft - very useful to start from, but not complete yet. Comments needed; hope to have some tooling to assist PMCs as well.</p>
<h1 id="links">Contents<a class="headerlink" href="#links" title="Permalink">&para;</a></h1>
<div class=".pull-right" style="float:right; border-style:dotted; width:200px; padding:5px; margin:5px">
<p>PMCs need to <a href="//www.apache.org/foundation/marks/responsibility">take responsibility</a> and can use the <a href="//www.apache.org/foundation/marks/reporting">Guide for Evaluating infringements</a>.</p>
</div>
<div id="toc"><ul><li><a class="toc-href" href="#introduction" title="Process Overview">Process Overview</a><ul><li><a class="toc-href" href="#trademark-issue-tracking-tool-ideas" title="Trademark Issue Tracking Tool Ideas">Trademark Issue Tracking Tool Ideas</a></li><li><a class="toc-href" href="#trademark-issue-tracking-tool-data-fields" title="Trademark Issue Tracking Tool Data Fields">Trademark Issue Tracking Tool Data Fields</a></li></ul></li><li><a class="toc-href" href="#other" title="Other Trademark Guidelines">Other Trademark Guidelines</a></li><li><a class="toc-href" href="#notes" title="Important Note">Important Note</a></li></ul></div>
<h1 id="introduction">Process Overview<a class="headerlink" href="#introduction" title="Permalink">&para;</a></h1>
<p>Once we are made aware of potential infringements or misuses of an Apache project's
trademark, that PMC needs to take action.</p>
<p><strong>Process design goals</strong> are to:</p>
<ul>
<li>Be as simple for PMCs/committers to use as practical</li>
<li>Separate different steps (i.e. reporting; evaluating; taking preliminary action; following up on responses from a third party)</li>
<li>Build up actual examples of misuse (or not) over time with resolution descriptions of which are trademark problems or not</li>
<li>Provide very basic statistics showing evidence of projects policing mark(s)</li>
</ul>
<p><strong>DRAFT Process Overview</strong></p>
<ol>
<li>A trademark misuse is reported to us (via trademarks@ or PMC or other method).  We should capture:</li>
</ol>
<ul>
<li><strong>Who reported</strong>  the issue? If a committer, we can more easily communicate with them (and perhaps have them login to an issue tracker to post information themselves), if non-committer this will be via email.</li>
<li>What is the <strong>specific URL</strong> (or picture of an brochure or physical goods) where the issue occurs?</li>
<li>What is the <strong>actual reported misuse</strong>?  I.e. we should store a copy of the phrase, paragraph, or description of the graphical misuse of the Apache trademark itself for later reference.</li>
<li><strong>Who is misusing</strong> the trademark? I.e. what company or individual produces that website or physical goods?</li>
<li>Does the reporter have any <strong>other comments</strong> or insights?</li>
</ul>
<ol>
<li>PMC will <strong>evaluate</strong> the report.</li>
</ol>
<ul>
<li>Follow the <a href="//www.apache.org/foundation/marks/reporting.html#issues">Checklist of issues to consider</a>.</li>
<li>Consider who owns the website (company, individual, etc.); what the specific use is; if related to product, service, other; etc.
<ul>
<li>In particular, the PMC will need to determine a contact email for who owns the website.</li>
</ul>
</li>
<li>If the use is clearly nominative use, then there is no action to take; we don't necessarily need to <em>track it</em>.
<ul>
<li>Inform the reporter it's nominative use, and thank them.</li>
</ul>
</li>
<li>If the use is a clearly an infringement by a software company where end users could be confused about our software product brand, track the issue.
<ul>
<li>Follow the <a href="//www.apache.org/foundation/marks/templates/">contact procedure templates</a>. If you don't get a positive response, you will need to follow up again and/or escalate with trademarks@.</li>
</ul>
</li>
<li>If the use may not be legally infringing, but is clearly violating our trademark policy, <em>track it</em>.
<ul>
<li>Follow the <a href="//www.apache.org/foundation/marks/templates/">contact procedure templates</a>. We can always <strong>ask</strong> someone to follow our policy and make changes, even if we couldn't legally force them to change.  Best bet is to ask politely and firmly.</li>
</ul>
</li>
<li>If the PMC isn't sure if the use is a problem that we need to address, <em>track it</em>.
<ul>
<li>Forward the issue to trademarks@ for an answer if we should address it.</li>
<li>If this is a problem, then the PMC should follow the <a href="//www.apache.org/foundation/marks/templates/">contact procedure templates</a>.</li>
</ul>
</li>
</ul>
<h2 id="trademark-issue-tracking-tool-ideas">Trademark Issue Tracking Tool Ideas<a class="headerlink" href="#trademark-issue-tracking-tool-ideas" title="Permalink">&para;</a></h2>
<p>Inputs will come from a variety of sources; we will always get some reports from non-committers
who are sending emails, possibly to the wrong places.  So ensuring PMCs know where to bubble up
trademark complaints will be important.  Data tracked in any tool should be committer-private.<br/>
Anyone may submit issues to the tool (need to prevent mass spam), but non-committer submitters
should not be able to see issue progress once submitted.</p>
<p>For any project, any committer on that project could have access to the tracking tool and making comments, but usually
only PMC members should be actually sending contact emails and updating the status of issues.
Docs should be clear that committers should not discuss issues in public unless the PMC makes
a specific request to do so - policing trademark misuse is best done privately and directly with the other party.
In particular, we do not discuss details of the policing process with the original reporter unless we have a specific reason to do so.</p>
<p>Many requests will probably come in via email, so if preliminary evaluation clearly points
to nominative use / not an issue, then we don't need to formally track it in a tool.  But if there is any question
within the PMC about if it's a problem, then we should track it, so that we can better capture
the decision and reasons why it is/isn't a problem for future reference.  Note that many
requests will continue to come in via trademarks@, so having a tool that we can cleanly handoff
evaluation and action from brand to the PMC is also valuable.</p>
<p><strong>Data Security</strong></p>
<ul>
<li>Anyone should be able to create a submission (until we need captcha to reduce spam)</li>
<li>Submitter should see a clear ACK that it was received</li>
<li>Only brand committee and relevant PMC (plus possibly committers on that PMC) should be able to see those issues</li>
<li>Option to echo changes to relevant private@ and/or trademarks@ lists for awareness</li>
</ul>
<h2 id="trademark-issue-tracking-tool-data-fields">Trademark Issue Tracking Tool Data Fields<a class="headerlink" href="#trademark-issue-tracking-tool-data-fields" title="Permalink">&para;</a></h2>
<p><strong>Newly Reported Issue</strong></p>
<table class="table">
<thead>
<tr>
<th>Field Name</th>
<th>Description (bold = required)</th>
</tr>
</thead>
<tbody>
<tr>
<td>ID</td>
<td>Like JIRA - project name/trademark and sequential number</td>
</tr>
<tr>
<td>Submitter</td>
<td>Email to contact submitter; if is a committer just use their ID</td>
</tr>
<tr>
<td>Submission</td>
<td>URL to original email if submitted via a mailing list</td>
</tr>
<tr>
<td><strong>Trademark</strong></td>
<td>Specific Apache trademark being reported (dropdown of project names)</td>
</tr>
<tr>
<td><strong>URL</strong></td>
<td>Specific URL where the trademark misuse is found</td>
</tr>
<tr>
<td><strong>Context</strong></td>
<td>Copy/paste of paragraph or similar content that the misuse is found in (in case the URL later changes)</td>
</tr>
<tr>
<td>IsLogo</td>
<td>Checkmark if this involves a graphical logo (defaults to no; project name)</td>
</tr>
<tr>
<td>ContentOwner</td>
<td>Name of website owner (company, individual, if known at time, otherwise PMC should fill in for issues being addressed)</td>
</tr>
<tr>
<td>OtherNotes</td>
<td>Text field for submitter to provide explanation of why they feel this is an issue; also if they see a pattern of misuses by the same organization elsewhere.</td>
</tr></tbody></table>
<p><strong>Fields Added During Tracking</strong></p>
<table class="table">
<thead>
<tr>
<th>Field Name</th>
<th>Description (bold = required)</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Status</strong></td>
<td>As in JIRA - overall status in workflow</td>
</tr>
<tr>
<td><strong>Type</strong></td>
<td>Type of issue - software product, services related to software, anything else (swag, etc.)</td>
</tr>
<tr>
<td>Comments</td>
<td>List of comments added by any committer ID</td>
</tr>
<tr>
<td>URLOther</td>
<td>List of URLs added by any committer ID (for showing other similar URLs)</td>
</tr>
<tr>
<td>Waiting</td>
<td>Flag denoting we are <em>waiting</em> for a response from an outside party</td>
</tr>
<tr>
<td>Responses</td>
<td>List of copy/paste responses from outside party, in case we want to keep record</td>
</tr>
<tr>
<td>Explanation</td>
<td>Text field for Brand Management committee to fill in explaining why resolution was made (i.e. why this is/is not an issue)</td>
</tr>
<tr>
<td>FAQURL</td>
<td>If this issue has been turned into a general .../marks/faq, URL to the answer for future reference</td>
</tr></tbody></table>
<p><strong>Potential Request Workflow</strong></p>
<ul>
<li>
<p>(Might be in email) - not tracked if the PMC determines it doesn't needs addressing.</p>
</li>
<li>
<p>Newly reported issue - presumably should email relevant private@ list for awareness (unless perhaps the PMC is self-reporting)</p>
</li>
<li>
<p>Evaluated: not an issue (with explanation). - <em>Closed</em></p>
</li>
<li>
<p>Evaluated: obvious infringement (waiting for PMC to make first contact)</p>
</li>
<li>
<p>Evaluated: policy violation not likely an infringement (waiting for PMC to make first contact)</p>
</li>
<li>
<p>Outside party has been contacted (<em>waiting</em> for their reply)</p>
</li>
<li>
<p>Outside party has been contacted a second time without a reply (<em>waiting</em> for their reply)</p>
</li>
<li>
<p>Outside party has responded positively</p>
</li>
<li>
<p>PMC has reviewed outside party has positively fixed the issue - <em>Resolved</em></p>
</li>
<li>
<p>Outside party has responded negatively - Escalate to trademarks@</p>
</li>
<li>
<p>Outside party has made apparent legal threats - Escalate to vp-brand@ and seek legal counsel - <em>Closed</em></p>
</li>
<li>
<p>Outside party has responded positively after escalation (PMC &amp; trademarks@ review positive fix) - <em>Resolved</em></p>
</li>
</ul>
<h1 id="other">Other Trademark Guidelines<a class="headerlink" href="#other" title="Permalink">&para;</a></h1>
<p>For more information about Apache marks, please see our <a href="//www.apache.org/foundation/marks/">formal Trademark
Policy</a> or the site map of <a href="//www.apache.org/foundation/marks/resources">Apache Trademark Resources</a>.<br/>
PMC members should also read the <a href="//www.apache.org/foundation/marks/responsibility">PMC Branding Responsibilities</a> guide.</p>
<h1 id="notes">Important Note<a class="headerlink" href="#notes" title="Permalink">&para;</a></h1>
<p><strong>Nothing in this ASF policy statement shall be interpreted to allow any
third party to claim any association with the Apache Software Foundation or
any of its projects or to imply any approval or support by ASF for any
third party products, services, or events.</strong></p>

</div>  </main>

  <!-- Footer -->
  <footer class="bg-primary">
    <div class="container">
      <div class="row">
        <br />
        <div class="col-sm-1">

        </div>
        <div class="col-sm-2">
          <h5 class="white">Community</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="http://community.apache.org/">Overview</a></li>
            <li><a href="/foundation/conferences.html">Conferences</a></li>
            <li><a href="http://community.apache.org/gsoc.html">Summer of Code</a></li>
            <li><a href="http://community.apache.org/newcomers/">Getting Started</a></li>
            <li><a href="/foundation/how-it-works.html">The Apache Way</a></li>
            <li><a href="/travel/">Travel Assistance</a></li>
            <li><a href="/foundation/getinvolved.html">Get Involved</a></li>
            <li><a href="/foundation/policies/conduct.html">Code of Conduct</a></li>
            <li><a href="http://community.apache.org/newbiefaq.html">Community FAQ</a></li>
            <li><a href="/memorials/">Memorials</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Innovation</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="http://incubator.apache.org/">Incubator</a></li>
            <li><a href="http://labs.apache.org/">Labs</a></li>
            <li><a href="/licenses/">Licensing</a></li>
            <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
            <li><a href="/foundation/marks/">Trademark Policy</a></li>
            <li><a href="/foundation/contact.html">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Tech Operations</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="/dev/">Developer Information</a></li>
            <li><a href="/dev/infrastructure.html">Infrastructure</a></li>
            <li><a href="/security/">Security</a></li>
            <li><a href="http://status.apache.org">Status</a></li>
            <li><a href="/foundation/contact.html">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Press</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="/press/">Overview</a></li>
            <li><a href="https://blogs.apache.org/">ASF News</a></li>
            <li><a href="https://blogs.apache.org/foundation/">Announcements</a></li>
            <li><a href="https://twitter.com/TheASF">Twitter Feed</a></li>
            <li><a href="/press/#contact">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-2">
          <h5 class="white">Legal</h5>
          <ul class="list-unstyled white" role="menu">
            <li><a href="/legal/">Legal Affairs</a></li>
            <li><a href="/legal/dmca.html">DMCA</a></li>
            <li><a href="/licenses/">Licensing</a></li>
            <li><a href="/foundation/marks/">Trademark Policy</a></li>
            <li><a href="/foundation/records/">Public Records</a></li>
            <li><a href="/foundation/policies/privacy.html">Privacy Policy</a></li>
            <li><a href="/licenses/exports/">Export Information</a></li>
            <li><a href="/foundation/license-faq.html">Licensing FAQ</a></li>
            <li><a href="/foundation/contact.html">Contacts</a></li>
          </ul>
        </div>

        <div class="col-sm-1">
        </div>

      </div>
      <hr class="col-lg-12 hr-white" />
      <div class="row">
        <div class="col-lg-12">
          <p class="text-center">Copyright &#169; 2023 The Apache Software Foundation, Licensed under the <a class="white" href="/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
          <p class="text-center">Apache and the Apache feather logo are trademarks of The Apache Software Foundation. </p>
        </div>
      </div>
    </div>

  </footer>

  <!-- / Footer -->

  <script src="/js/jquery-2.1.1.min.js"></script>
  <script src="/js/bootstrap.js"></script>
  <script src="/js/slideshow.js"></script>
  <script>
    (function($){
    $(document).ready(function(){
    $('ul.dropdown-menu [data-toggle=dropdown]').on('click', function(event) {
    event.preventDefault();
    event.stopPropagation();
    $(this).parent().siblings().removeClass('open');
    $(this).parent().toggleClass('open');
    console.log('WOrked');
    });
    });
    })(jQuery);
  </script>
</body>
</html>