<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.39 (Ruby 3.4.9) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-dsmullen-ppd-taxonomy-05" category="info" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.33.0 -->
  <front>
    <title abbrev="PPDTaxonomy">Privacy Preference Declaration Taxonomy</title>
    <seriesInfo name="Internet-Draft" value="draft-dsmullen-ppd-taxonomy-05"/>
    <author fullname="Daniel Smullen">
      <organization>CableLabs</organization>
      <address>
        <email>d.smullen@cablelabs.com</email>
      </address>
    </author>
    <author fullname="Brian Scriber">
      <organization>CableLabs</organization>
      <address>
        <email>brian.scriber@computer.org</email>
      </address>
    </author>
    <date year="2026" month="May" day="22"/>
    <keyword>privacy preferences</keyword>
    <keyword>home networks</keyword>
    <keyword>internet of things</keyword>
    <keyword>data taxonomy</keyword>
    <abstract>
      <?line 42?>

<t>This document defines the core vocabulary, comparison model, and extension
discipline used by Privacy Preference Declarations (PPDs) to express atomic
privacy-relevant dataflows in home networks. It complements the companion PPD
architecture and protocol work by standardizing the core fields used in
participant declarations and household policy rules. The core vocabulary is
the mandatory shared semantic floor for baseline participant-facing
interoperability. Richer ecosystem-specific vocabularies remain possible, but
comparison-relevant non-core terms need explicit relationships to the shared
core so they remain computable. Baseline participant-facing protocol messages
use compact identifiers plus taxonomy context rather than requiring full
ontology exchange on the wire.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        The latest revision of this draft can be found at <eref target="https://drspangle.github.io/draft-dsmullen-ppd-taxonomy/draft-dsmullen-ppd-taxonomy.html"/>.
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-dsmullen-ppd-taxonomy/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/drspangle/draft-dsmullen-ppd-taxonomy"/>.</t>
    </note>
  </front>
  <middle>
    <?line 57?>

<section anchor="introduction">
      <name>Introduction</name>
      <t>The Privacy Preference Declaration (PPD) architecture depends on a shared
understanding of privacy-related semantics.
<xref target="I-D.draft-dsmullen-ppd-architecture"/> defines the roles, trust boundaries,
and lifecycle. <xref target="I-D.draft-dsmullen-ppd-protocol"/> defines the
participant-facing message flow and object structure. This document defines the
core fields and qualifier families used by those messages.</t>
      <t>The baseline PPD protocol carries atomic descriptive statements from
device-side participants and atomic effective-policy rules from the household
side. This taxonomy treats those statements and rules as atomic
privacy-relevant dataflows. It defines the meaning of the fields used in
those dataflows and the minimum semantic discipline needed to compare them
coherently across devices, vendors, and household deployments.</t>
      <t>The purpose of this taxonomy is to model those atomic privacy-relevant
dataflows as the fundamental semantic elements of PPD policy. A participant
declaration describes dataflows from the participant side: which dataflows a
device or associated service performs, requires, or may attempt. A household
policy rule describes those same dataflows from the household side: whether
they are allowed, denied, or qualified. The taxonomy exists so these two views
can be compared coherently.</t>
      <t>In this architecture, those household-side rules express household privacy
preferences for signaling and comparison purposes. They do not by themselves
define or imply a separate enforcement mechanism that prevents, compels, or
otherwise guarantees participant behavior. Enforcement-capable extensions or
local control mechanisms are separate concerns and are outside the baseline
scope of this document, because the taxonomy's job is to provide a shared
semantic floor for expressing and comparing dataflows, while enforcement
depends on deployment-specific control points, trust models, and device or
service capabilities.</t>
      <t>The taxonomy is designed to be useful in constrained operational environments.
It therefore separates the stable meaning of core terms from any richer
external semantic framework that might also describe them. Implementations <bcp14>MAY</bcp14>
use richer vocabularies, ontology representations, or local policy-analysis
artifacts where useful, but baseline participant-facing interoperability
depends on a shared computable semantic floor rather than on a full external
reasoning stack.</t>
      <t>The rest of this document does four things:</t>
      <ul spacing="normal">
        <li>
          <t>it defines the core fields that make up an atomic PPD dataflow;</t>
        </li>
        <li>
          <t>it defines the initial qualifier families used with those fields;</t>
        </li>
        <li>
          <t>it defines the comparison model used to relate core and non-core terms; and</t>
        </li>
        <li>
          <t>it defines what makes a participant-facing term or refinement semantically
valid or invalid for baseline use.</t>
        </li>
      </ul>
    </section>
    <section anchor="conventions-and-definitions">
      <name>Conventions and Definitions</name>
      <t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <?line -18?>

</section>
    <section anchor="core-semantic-model">
      <name>Core Semantic Model</name>
      <t>The foundational semantic unit in this taxonomy is an atomic privacy-relevant
dataflow.</t>
      <t>In the baseline PPD model, the participant-facing protocol defined by
<xref target="I-D.draft-dsmullen-ppd-protocol"/> carries atomic participant-side
dataflows in declarations and atomic household-side dataflows in policy
rules. Household-side policy rules also carry a separate rule effect such as
<tt>allow</tt> or <tt>deny</tt>. Comparison between participant behavior and household
policy is grounded in comparison of those atomic dataflows.</t>
      <t>A baseline atomic dataflow contains these five core fields:</t>
      <ul spacing="normal">
        <li>
          <t><tt>data_type</tt>: what kind of data is involved;</t>
        </li>
        <li>
          <t><tt>purpose</tt>: why the dataflow occurs;</t>
        </li>
        <li>
          <t><tt>action</tt>: which privacy-relevant action occurs;</t>
        </li>
        <li>
          <t><tt>source</tt>: the immediate origin of the data in that dataflow; and</t>
        </li>
        <li>
          <t><tt>handling_context</tt>: the context in which that dataflow occurs or into which
it is directed.</t>
        </li>
      </ul>
      <t>It can also carry structured dataflow qualifiers.</t>
      <t>In this document, <tt>handling</tt> is the general umbrella term for the collection,
use, transfer, or inference of data represented by an atomic dataflow.
<tt>Processing</tt> is used more narrowly for execution semantics, such as those
constrained by <tt>processing_boundary</tt>. <tt>Operation</tt> is reserved for protocol
operations defined by <xref target="I-D.draft-dsmullen-ppd-protocol"/>.</t>
      <t>One compact example is a camera that uses observed media data for a security
function within the household context. That can be described as one
atomic dataflow with <tt>data_type=ppd:contentData</tt>,
<tt>purpose=ppd:security</tt>, <tt>action=ppd:use</tt>,
<tt>source=ppd:participantObserved</tt>,
<tt>handling_context=ppd:householdContext</tt>, and
<tt>processing_boundary=ppd:onDeviceOnly</tt>. The field and qualifier sections
below define the field families and qualifier families in detail.</t>
      <t>Modality is likewise not part of the taxonomy terms that populate the core
fields or qualifier families. Core and non-core taxonomy terms <bcp14>MUST NOT</bcp14> encode
policy effect or policy modality such as allowed, denied, prohibited,
required, or optional. If a deployment needs to express both a dataflow
concept and a policy position about that concept, the concept <bcp14>MUST</bcp14> be carried
in the appropriate core field or qualifier family and the policy position
<bcp14>MUST</bcp14> be expressed separately through the policy-rule layer.</t>
      <t>This document does not define a household policy authoring workflow, a full
conflict-resolution procedure, or a general reasoning engine. It defines the
minimum semantic structure needed so participant declarations and household
policy can be compared in an interoperable way.</t>
    </section>
    <section anchor="design-goals">
      <name>Design Goals</name>
      <ul spacing="normal">
        <li>
          <t>Semantic Clarity: Provide stable, unambiguous meanings for privacy-related
terms used in PPD messages.</t>
        </li>
        <li>
          <t>Core Primitive Coverage: Standardize the core fields needed by the
baseline protocol rule and statement model.</t>
        </li>
        <li>
          <t>Compact Operational Use: Support compact identifiers in participant-facing
JSON messages.</t>
        </li>
        <li>
          <t>Extensibility Without Fragmentation: Allow organization-specific
vocabularies while requiring comparison-relevant extensions to remain
reducible to the shared core.</t>
        </li>
        <li>
          <t>Validation and Comparison Support: Enable comparison of participant
assertions and household policy without forcing every deployment to use a
single heavy semantic framework.</t>
        </li>
        <li>
          <t>Interoperability: Preserve a shared computable semantic floor across
vendors, device classes, and household deployments.</t>
        </li>
      </ul>
    </section>
    <section anchor="core-semantic-floor-and-extension-model">
      <name>Core Semantic Floor and Extension Model</name>
      <t>The baseline PPD core vocabulary is not intended to be the only vocabulary
used in real deployments. Device vendors, service providers, vertical
ecosystems, and user-facing policy tools are expected to introduce richer
concepts over time.</t>
      <t>The purpose of the core vocabulary is different. It provides the minimum
shared semantic substrate against which participant declarations and household
policy can still be interpreted and compared when those richer vocabularies
are present.</t>
      <t>This means the baseline model tolerates variability in how deployments,
vendors, or policy tools interpret and name finer-grained concepts. It does
not require every deployment to use the same intermediate categories. It does
require comparison-relevant participant-facing terms to collapse back to the
shared core in a declared, computable way.</t>
      <t>That tolerance also applies when participant-facing privacy descriptions are
broader, narrower, or intentionally ambiguous across vendors or ecosystems.
The purpose of the shared core is to ensure that such local variation can
still be reduced to a common computable floor, so that household policies can
be compared against participant declarations without requiring the household
to model each vendor's vocabulary or interpretation strategy directly.</t>
      <t>For baseline participant-facing interoperability:</t>
      <ul spacing="normal">
        <li>
          <t>core terms define the shared semantic floor;</t>
        </li>
        <li>
          <t>richer non-core terms <bcp14>MAY</bcp14> be used through the taxonomy context mechanism
defined by <xref target="I-D.draft-dsmullen-ppd-protocol"/>; and</t>
        </li>
        <li>
          <t>when a non-core term or qualifier is used in a comparison-relevant field, it
<bcp14>MUST</bcp14> be defined with an explicit relationship or reduction to the relevant
core term or family-specific comparison basis sufficient to keep the term
computable against the shared core model.</t>
        </li>
      </ul>
      <t>Terms that do not carry such a relationship can still be locally meaningful,
but they are outside baseline interoperable computation.</t>
    </section>
    <section anchor="core-taxonomy-structure">
      <name>Core Taxonomy Structure</name>
      <t>The baseline taxonomy consists of five core fields plus selected dataflow
qualifier families. These are used together in atomic declaration
statements and atomic effective-policy rules.</t>
      <t>The baseline core is intentionally small. It is not meant to exhaust the full
space of home-IoT data categories, service roles, or policy-authoring
concepts. Its purpose is to define the minimum shared set of computable
primitives to which richer vocabularies can be related.
Later taxonomy releases can add terms, but the initial core terms defined here
are the mandatory baseline floor for interoperable computation.
The definitions in this section define the baseline meaning of those initial
core terms.</t>
      <t>Within a given field family, the baseline core terms are intended to act as
the broad floor categories used for interoperable comparison. Narrower terms
used in that family are expected to reduce to exactly one broader core term.
If a local concept appears to span multiple broad categories, that usually
means the handling needs a narrower term below the floor, a clearer field
choice, or separate atomic dataflows.</t>
      <t>That ambiguity is expected to arise in practice, because humans and local
semantic systems will not always classify concepts the same way. The baseline
rule is therefore not that every local interpretation must be identical. It is
that any participant-facing refinement used for interoperable comparison must
ultimately resolve to one computable branch within the relevant field family.</t>
      <t>In other words, variation in local semantic expression is tolerated, but the
burden of reduction to the shared comparison basis belongs to the
participant-facing taxonomy content rather than to the household.</t>
      <t>For field families that participate in subsumption, this document is therefore
intentionally prescriptive about refinement discipline:</t>
      <ul spacing="normal">
        <li>
          <t>a non-core refinement <bcp14>MUST</bcp14> identify exactly one immediate broader term within
the same field family;</t>
        </li>
        <li>
          <t>repeated broader-than relationships <bcp14>MUST</bcp14> eventually terminate at a core term
in that family; and</t>
        </li>
        <li>
          <t>if a concept would require multiple immediate broader terms in the same
family, it is not a valid single refinement for baseline comparison and
should instead be modeled through a narrower term under one branch, a
clearer field choice, or separate atomic dataflows.</t>
        </li>
      </ul>
      <t>These refinement rules do not allow policy modality to be folded into field
or qualifier concepts. For example, a term that attempts to combine a
handling-context category with a policy position, such as a recipient marked as
prohibited or required, is not a valid baseline taxonomy refinement. Such
modality belongs in the policy-rule layer rather than in the taxonomy term
itself.</t>
      <section anchor="semantic-validity-of-terms-and-refinements">
        <name>Semantic Validity of Terms and Refinements</name>
        <t>The baseline core and extension model defined here is intentionally strict
about semantic validity. This is necessary to preserve interoperable
comparison rather than allowing locally convenient but semantically unstable
labels to appear participant-facing on the wire.</t>
        <t>A term or qualifier value is semantically valid for baseline participant-
facing use only if all of the following are true:</t>
        <ul spacing="normal">
          <li>
            <t>it belongs to exactly one field family or qualifier family defined by this
document or by a later compatible taxonomy specification;</t>
          </li>
          <li>
            <t>it follows the classification rule of the family in which it appears;</t>
          </li>
          <li>
            <t>it does not collapse multiple semantic axes that this document models
separately, such as handling-context identity plus policy modality, or data type
plus origin history;</t>
          </li>
          <li>
            <t>if it is a refinement in a family that supports subsumption, it preserves
and specializes the meaning of its broader term rather than contradicting,
negating, or semantically escaping it;</t>
          </li>
          <li>
            <t>if a local concept cannot be placed in one family without relying on
multiple immediate broader terms in that same family, it is not a valid
single refinement for baseline comparison;</t>
          </li>
          <li>
            <t>if a local concept spans multiple semantic dimensions modeled separately by
this taxonomy, it is decomposed across the corresponding fields or
qualifier families rather than encoded into one overloaded taxonomy term;
and</t>
          </li>
          <li>
            <t>if that decomposition yields multiple distinct handling cases, those cases
are represented as separate atomic dataflows.</t>
          </li>
        </ul>
        <t>These validity rules apply equally to core terms and non-core participant-
facing refinements. A syntactically well-formed namespaced identifier is not
enough to make a term valid for baseline comparison.</t>
      </section>
      <section anchor="data-type-what">
        <name>Data Type (What)</name>
        <t>Data Type terms identify the kind of data involved in the dataflow. They are
classified by what the data is.</t>
        <t>Data Type participates in semantic comparison and supports
broader-than/narrower-than relationships.</t>
        <t>The core Data Type set is intentionally broad. Its purpose is to provide a
stable floor under which narrower device- or ecosystem-specific terms can be
placed. These categories are based on the immediate semantic content of the
data, not on its source, derivation history, transport path, or downstream
use. Whether data is directly observed or derived from prior data is handled
through the <tt>source</tt> field rather than by a separate <tt>data_type</tt> category.</t>
        <t>This also means different deployments may introduce different narrower data
type terms for concepts that are genuinely open to interpretation. The
baseline requirement is not to eliminate that variability. The requirement is
that a participant-facing <tt>data_type</tt> term still classify by what the data is
and reduce to one computable branch of the shared core.</t>
        <t>The initial core term set is:</t>
        <ul spacing="normal">
          <li>
            <t><tt>ppd:identifierData</tt>: data used to identify a user, household, participant,
device, account, or service interaction.</t>
          </li>
          <li>
            <t><tt>ppd:profileData</tt>: data that describes a user, household, account, or
associated preferences and characteristics.</t>
          </li>
          <li>
            <t><tt>ppd:sensorData</tt>: non-content measured or observed data obtained from
sensing of the device, the local environment, or an observed space or
object.</t>
          </li>
          <li>
            <t><tt>ppd:contentData</tt>: content captured, communicated, or stored as user- or
environment-associated content, including text, audio, image, and video
content.</t>
          </li>
          <li>
            <t><tt>ppd:locationData</tt>: data about physical location, movement, or place
association.</t>
          </li>
          <li>
            <t><tt>ppd:deviceAndNetworkData</tt>: data about device configuration, capabilities,
settings, status, connectivity, or network environment.</t>
          </li>
          <li>
            <t><tt>ppd:usageData</tt>: data about interaction with the device, service, or
associated interfaces.</t>
          </li>
        </ul>
        <t>For example, a thermostat reading is <tt>ppd:sensorData</tt>, an account nickname is
<tt>ppd:profileData</tt>, and a doorbell video clip is <tt>ppd:contentData</tt>.</t>
        <t>Terms such as temperature readings, humidity readings, audio samples, video
frames, event clips, device identifiers, crash logs, and occupancy estimates
are expected to appear as narrower refinements of these broader core data
types. For example, an occupancy estimate that describes the state of an
observed space is still classified by what that data means, while the fact
that it was inferred from prior data is captured separately through the
<tt>source</tt> field.</t>
        <t>Because humans ultimately define many of these refinements, misclassification
is a real risk. In particular, authors may be tempted to classify by
downstream use, by source, or by a composite payload rather than by the
immediate semantic content of the data itself. Such cases are exactly why the
baseline model requires explicit reduction to the core and rejects a single
participant-facing refinement that would need multiple immediate broader terms
within the same <tt>data_type</tt> family.</t>
      </section>
      <section anchor="purpose-why">
        <name>Purpose (Why)</name>
        <t>Purpose terms identify the reason or operational objective for the handling.
They are classified by why the current handling step occurs.</t>
        <t>Purpose participates in semantic comparison and supports broader-than/
narrower-than relationships.</t>
        <t>The core Purpose set is intentionally broad. It is designed to reflect the
high-level purpose categories commonly seen in privacy notices and policy
documents, while leaving room for narrower operational purposes below it.
These categories are based on why the handling occurs in the rule at issue,
not on product-feature labels, recipient identity, data type, action, or
policy modality.</t>
        <t>The initial core term set is:</t>
        <ul spacing="normal">
          <li>
            <t><tt>ppd:coreFunctionality</tt>: handling directly necessary to provide the primary
function of the device or service.</t>
          </li>
          <li>
            <t><tt>ppd:personalization</tt>: handling used to tailor behavior, presentation, or
operation to a user, household, or context.</t>
          </li>
          <li>
            <t><tt>ppd:communicationsAndNotifications</tt>: handling used to communicate with a
user, household member, or administrator, including notices, alerts, and
service messages.</t>
          </li>
          <li>
            <t><tt>ppd:security</tt>: handling used to maintain safety, security, fraud
prevention, abuse prevention, or protective monitoring.</t>
          </li>
          <li>
            <t><tt>ppd:diagnosticsAndMaintenance</tt>: handling used to troubleshoot, repair,
maintain, or keep the device or service operational.</t>
          </li>
          <li>
            <t><tt>ppd:analyticsAndImprovement</tt>: handling used to analyze operation or improve
the quality, reliability, or performance of the device or service.</t>
          </li>
          <li>
            <t><tt>ppd:legalCompliance</tt>: handling used to satisfy legal, regulatory, audit, or
compliance obligations.</t>
          </li>
          <li>
            <t><tt>ppd:advertisingAndMarketing</tt>: handling used to target, deliver, measure, or
optimize promotional or marketing activity.</t>
          </li>
        </ul>
        <t>Terms such as remote monitoring, remote viewing, predictive maintenance,
product improvement, anomaly detection, and more specific analytical or
security purposes are expected to appear as narrower refinements of these
broader core purposes.</t>
        <t>For example, a resident-requested live view can refine under
<tt>ppd:coreFunctionality</tt>, intrusion-alert scoring can refine under
<tt>ppd:security</tt>, and product-quality analysis can refine under
<tt>ppd:analyticsAndImprovement</tt>.</t>
        <t>A purpose refinement <bcp14>MUST</bcp14> preserve and specialize the reason expressed by its
broader term. A purpose term <bcp14>MUST NOT</bcp14> collapse purpose together with another
semantic axis such as recipient category, retention, data type, or policy
effect.</t>
        <t>Feature labels that can serve more than one broad purpose are not good floor
categories by themselves. For example, a motion-detection feature may support
<tt>ppd:coreFunctionality</tt>, <tt>ppd:security</tt>, or another narrower purpose depending
on the actual rule context.</t>
        <t>When a real handling path genuinely serves multiple purposes, that ambiguity
<bcp14>MUST NOT</bcp14> be collapsed into one purpose label. For baseline participant-facing
use, the handling <bcp14>MUST</bcp14> instead be represented as separate atomic dataflows,
each with its own purpose classification. This is not only a comparison
convenience. It also improves transparency by making it easier for a
household, an implementer, or an automated policy-analysis function to
identify and reason about specific sensitive purposes, specific data types,
and the exact handling paths to which they apply.</t>
      </section>
      <section anchor="action-how">
        <name>Action (How)</name>
        <t>Action terms identify the privacy-relevant operation being performed.
Action terms are classified by which privacy-relevant operation occurs.</t>
        <t>Unlike several of the other core fields, the baseline action vocabulary is
intentionally flat rather than hierarchical.</t>
        <t>The initial core term set is:</t>
        <ul spacing="normal">
          <li>
            <t><tt>ppd:collection</tt>: acquiring, observing, or accepting data into the handling
context of the participant or service.</t>
          </li>
          <li>
            <t><tt>ppd:use</tt>: operating on data within the current handling context without
disclosing it to a different recipient.</t>
          </li>
          <li>
            <t><tt>ppd:transfer</tt>: disclosing, transmitting, or otherwise making data available
to a different recipient or handling context.</t>
          </li>
          <li>
            <t><tt>ppd:inference</tt>: deriving new data, classifications, or conclusions from
existing data.</t>
          </li>
        </ul>
      </section>
      <section anchor="source-from-where">
        <name>Source (From Where)</name>
        <t>Source terms identify the immediate origin of the handled data as it enters
the current handling step. They are classified by that immediate origin.
Source does not attempt to encode full provenance or multi-step lineage.
Source participates in semantic comparison and supports broader-than/
narrower-than relationships.</t>
        <t>The initial core term set is:</t>
        <ul spacing="normal">
          <li>
            <t><tt>ppd:userProvided</tt>: data intentionally provided by a user through direct
interaction with the participant, service, or associated control surface.</t>
          </li>
          <li>
            <t><tt>ppd:participantObserved</tt>: data directly observed by the participant from the
device, its environment, or an observed space or object.</t>
          </li>
          <li>
            <t><tt>ppd:participantGenerated</tt>: data generated by the participant as part of its
own operation, status reporting, logging, or internal state handling.</t>
          </li>
          <li>
            <t><tt>ppd:householdProvided</tt>: data directly supplied to the current handling step
by another household-local device, controller, gateway, or local service.</t>
          </li>
          <li>
            <t><tt>ppd:vendorProvided</tt>: data directly supplied to the current handling step by
a service associated with the device or service vendor.</t>
          </li>
          <li>
            <t><tt>ppd:thirdPartyProvided</tt>: data directly supplied to the current handling
step by a third party outside the participant's primary vendor or household
relationship.</t>
          </li>
          <li>
            <t><tt>ppd:derivedFromPriorData</tt>: data whose immediate origin is prior data
processing within the current handling path rather than direct observation,
direct user provision, or direct supply from a household, vendor, or
third-party context.</t>
          </li>
        </ul>
        <t>When a provided category such as <tt>ppd:vendorProvided</tt> is used, this field does
not also attempt to encode deeper upstream lineage inside that supplying
context. For example, a vendor-delivered inference result is still classified
here as <tt>ppd:vendorProvided</tt>; the fact that the vendor may have derived it
from prior data is a deeper provenance question outside the baseline source
semantics defined in this revision.</t>
        <t>Terms such as camera sensor observation, microphone observation, household
gateway feed, vendor profile feed, and more specific third-party or
vendor-origin categories are expected to appear as narrower refinements of
these broader source categories.</t>
        <t>For example, a camera frame captured by the participant is
<tt>ppd:participantObserved</tt>, a cloud-supplied account profile is
<tt>ppd:vendorProvided</tt>, and an occupancy score computed earlier in the same
handling path is <tt>ppd:derivedFromPriorData</tt>.</t>
      </section>
      <section anchor="handling-context">
        <name>Handling Context</name>
        <t>Handling Context terms identify the target handling context to which the
current atomic dataflow applies. For <tt>collection</tt>, Handling Context
identifies the context into which the collected data is brought. For <tt>use</tt>
and <tt>inference</tt>, Handling Context identifies the context in which that
dataflow occurs. For <tt>transfer</tt>, Handling Context identifies the recipient-
side context into which the data is transferred. Handling Context
participates in semantic comparison and can support broader-than/narrower-than
relationships. It is classified by the target handling context to which the
current dataflow applies. Here, <tt>target</tt> means the context the dataflow is
directed into or occurs within. It does not imply that every action is
modeled as a transmission.</t>
        <t>Handling Context does not by itself express a placement restriction on how a
<tt>use</tt> or <tt>inference</tt> operation executes inside that context. More specific
execution restrictions belong in the <tt>processing_boundary</tt> qualifier family.
The two are related but not interchangeable.</t>
        <t>Handling Context classifies semantic handling context, not organization
identity.
Named entities such as a particular company or service brand are not
themselves core handling-context terms. If such identifiers are introduced through
non-core refinements, their role-specific meaning still needs to reduce to one
of the handling-context categories below.</t>
        <t>The initial core term set is:</t>
        <ul spacing="normal">
          <li>
            <t><tt>ppd:householdContext</tt>: a handling context that remains within the
participant or household-local relationship rather than introducing a remote
external service or audience.</t>
          </li>
          <li>
            <t><tt>ppd:vendorContext</tt>: a handling context operated by, or acting on behalf of,
the participant's primary device or service vendor.</t>
          </li>
          <li>
            <t><tt>ppd:thirdPartyContext</tt>: a handling context operated by an entity outside
the participant's primary vendor or household relationship.</t>
          </li>
          <li>
            <t><tt>ppd:publicAudience</tt>: a disclosure context in which data is made available
to the public or to an open audience rather than to a bounded service
relationship.</t>
          </li>
        </ul>
        <t>Terms such as vendor cloud, household controller, partner analytics service,
data broker, public feed, or other more specific recipient or handling
contexts are expected to appear as narrower refinements of these broader
handling-context categories.</t>
        <t>For example, sending data to the device vendor is <tt>ppd:vendorContext</tt>, using
data within a household hub is <tt>ppd:householdContext</tt>, and publishing data to
an open feed is <tt>ppd:publicAudience</tt>.</t>
      </section>
      <section anchor="dataflow-qualifiers">
        <name>Dataflow Qualifiers</name>
        <t>The baseline protocol also allows structured qualifiers through the
<tt>constraints</tt> object. This document defines the initial qualifier families
used by that object.</t>
        <t>The protocol wire object remains named <tt>constraints</tt>, but its members are
semantically qualifiers on atomic dataflows.</t>
        <t>Qualifier families are action-sensitive. They are not a free-form bag of
attributes that apply equally to every action. A qualifier family is only
valid where this document or a later specification defines its meaning for the
relevant action context. Baseline participant-facing uses that attach a
qualifier family outside its defined applicability are invalid.</t>
        <section anchor="retention">
          <name>Retention</name>
          <t>Retention qualifies how long the relevant data or resulting artifact may
persist after the scoped action in question. It is classified by how long the
relevant data or artifact may persist after that scoped action.</t>
          <t>Retention is action-sensitive. In particular:</t>
          <ul spacing="normal">
            <li>
              <t>for <tt>collection</tt>, retention qualifies whether the collected result is
allowed to persist after collection;</t>
            </li>
            <li>
              <t>for <tt>use</tt>, retention qualifies how long the data or resulting artifact may
remain available for that use;</t>
            </li>
            <li>
              <t>for <tt>transfer</tt>, retention qualifies downstream persistence by the receiving
side rather than only the sender's local storage duration; and</t>
            </li>
            <li>
              <t>for <tt>inference</tt>, retention qualifies how long inferred output may persist.</t>
            </li>
          </ul>
          <t>The baseline retention model distinguishes two strong named poles:</t>
          <ul spacing="normal">
            <li>
              <t>ppd:ephemeral</t>
            </li>
            <li>
              <t>ppd:indefinite</t>
            </li>
          </ul>
          <t><tt>ppd:ephemeral</tt> means the handling is not intended to result in durable
persistence beyond the immediate handling context.</t>
          <t><tt>ppd:indefinite</tt> means no bounded upper retention limit is expressed in the
rule.</t>
          <t>Bounded retention periods are expected to require more specific quantitative
refinements, including explicit duration values and units, in later revisions
or deployment profiles. The baseline compact participant-facing form defined
here therefore standardizes only the categorical retention values above.
Retention therefore uses its own family-specific categorical or quantitative
comparison semantics rather than the broader-than/narrower-than hierarchy used
by field families such as <tt>data_type</tt>, <tt>purpose</tt>, <tt>source</tt>, or
<tt>handling_context</tt>.</t>
        </section>
        <section anchor="processing-boundary">
          <name>Processing Boundary</name>
          <t>Processing Boundary qualifies where a processing operation may execute or
remain. It is classified by where <tt>use</tt> or <tt>inference</tt> may execute within the
applicable handling context. This family is most natural for <tt>use</tt> and
<tt>inference</tt>. It is not the primary semantic mechanism for describing transfer
recipients, because <tt>handling_context</tt> already identifies the transfer target
context.</t>
          <t>In the baseline model, <tt>processing_boundary</tt> is therefore primarily a
qualifier on <tt>use</tt> and <tt>inference</tt> dataflows rather than a general qualifier
on <tt>transfer</tt>.</t>
          <t><tt>processing_boundary</tt> does not replace <tt>handling_context</tt>. Handling Context
identifies the target handling context to which the dataflow applies.
<tt>processing_boundary</tt> further constrains where a <tt>use</tt> or <tt>inference</tt>
operation may execute within that context. For example, a <tt>use</tt> dataflow with
<tt>handling_context=ppd:householdContext</tt> can still be further narrowed by
<tt>processing_boundary=ppd:onDeviceOnly</tt> or
<tt>processing_boundary=ppd:inHomeOnly</tt>.</t>
          <t>The initial core term set is:</t>
          <ul spacing="normal">
            <li>
              <t><tt>ppd:onDeviceOnly</tt>: the relevant processing is constrained to execute on the
participant device itself.</t>
            </li>
            <li>
              <t><tt>ppd:inHomeOnly</tt>: the relevant processing is constrained to execute within
the household-local trust boundary rather than in a remote service
environment.</t>
            </li>
            <li>
              <t><tt>ppd:approvedRemoteProcessing</tt>: the relevant processing is allowed to occur
in an approved remote service environment.</t>
            </li>
          </ul>
          <t>Processing Boundary participates in semantic comparison and can support
broader-than/narrower-than relationships.</t>
        </section>
        <section anchor="jurisdiction">
          <name>Jurisdiction</name>
          <t>Jurisdiction qualifies the legal or regulatory domain relevant to the
dataflow. It is intended for cases where a policy needs to declare which
jurisdictions matter for a handling step or storage context, not to model the
substance of those jurisdictions' laws and regulations. It is classified by
the scoped handling step or storage context being constrained, together with
the declared jurisdiction codes attached to that scope.</t>
          <t>Jurisdiction is a structured qualifier family, not a single flat label. For
baseline participant-facing use, a jurisdiction qualifier identifies:</t>
          <ul spacing="normal">
            <li>
              <t>a <tt>scope</tt>; and</t>
            </li>
            <li>
              <t>one or more jurisdiction codes.</t>
            </li>
          </ul>
          <t>The <tt>scope</tt> identifies which handling step or storage context the qualifier
constrains. The baseline <tt>scope</tt> values are:</t>
          <ul spacing="normal">
            <li>
              <t><tt>collection</tt></t>
            </li>
            <li>
              <t><tt>use</tt></t>
            </li>
            <li>
              <t><tt>inference</tt></t>
            </li>
            <li>
              <t><tt>transfer</tt></t>
            </li>
            <li>
              <t><tt>storage</tt></t>
            </li>
          </ul>
          <t>The first four values align with baseline handling actions. <tt>storage</tt> is a
distinct handling-related context used when the constraint applies to retained
data rather than to a specific action step.</t>
          <t>For baseline participant-facing use, the jurisdiction codes use existing
IETF-defined code formats:</t>
          <ul spacing="normal">
            <li>
              <t><tt>countrycode</tt> for ISO 3166-1 alpha-2 country codes in lowercase
<xref target="RFC8006"/>; and</t>
            </li>
            <li>
              <t><tt>subdivisioncode</tt> for ISO 3166-2 subdivision codes in lowercase
<xref target="RFC9388"/>.</t>
            </li>
          </ul>
          <t>For example:</t>
          <ul spacing="normal">
            <li>
              <t>a collection-scoped jurisdiction qualifier can constrain the jurisdictions
in which collection may occur;</t>
            </li>
            <li>
              <t>a transfer-scoped jurisdiction qualifier can constrain the jurisdictions to
which a transfer recipient may belong; and</t>
            </li>
            <li>
              <t>a storage-scoped jurisdiction qualifier can constrain the jurisdictions in
which retained data may be kept.</t>
            </li>
          </ul>
          <t>Jurisdiction does not use generic taxonomy subsumption. Baseline comparison is
family-specific:</t>
          <ul spacing="normal">
            <li>
              <t><tt>scope</tt> compares by exact identity;</t>
            </li>
            <li>
              <t><tt>countrycode</tt> values compare by exact identifier matching;</t>
            </li>
            <li>
              <t><tt>subdivisioncode</tt> values compare by exact identifier matching; and</t>
            </li>
            <li>
              <t>a <tt>countrycode</tt> also contains <tt>subdivisioncode</tt> values within that country.</t>
            </li>
          </ul>
          <t>For example, <tt>countrycode=us</tt> contains <tt>subdivisioncode=us-ca</tt>, but a
jurisdiction qualifier scoped to <tt>transfer</tt> does not automatically compare as
equivalent to the same jurisdiction codes scoped to <tt>storage</tt>.</t>
        </section>
      </section>
    </section>
    <section anchor="subsumption-and-comparison">
      <name>Subsumption and Comparison</name>
      <t>Baseline comparison is not limited to exact token equality.</t>
      <t>For comparison-relevant fields and qualifier families that participate in
subsumption:</t>
      <ul spacing="normal">
        <li>
          <t>a term can be broader than another term;</t>
        </li>
        <li>
          <t>a term can be narrower than another term; and</t>
        </li>
        <li>
          <t>two terms are equivalent when each subsumes the other.</t>
        </li>
      </ul>
      <t>Only the following baseline fields and qualifier families participate in
subsumption:</t>
      <ul spacing="normal">
        <li>
          <t><tt>data_type</tt></t>
        </li>
        <li>
          <t><tt>purpose</tt></t>
        </li>
        <li>
          <t><tt>source</tt></t>
        </li>
        <li>
          <t><tt>handling_context</tt></t>
        </li>
        <li>
          <t><tt>processing_boundary</tt></t>
        </li>
      </ul>
      <t>The following do not use baseline subsumption:</t>
      <ul spacing="normal">
        <li>
          <t><tt>action</tt>, which remains a flat enumerable family and therefore compares by
exact identity or exact reduction to a core action value; and</t>
        </li>
        <li>
          <t><tt>retention</tt>, which uses its own categorical or quantitative comparison
semantics rather than a generic taxonomy hierarchy; and</t>
        </li>
        <li>
          <t><tt>jurisdiction</tt>, which uses the family-specific scope and code-containment
semantics defined above rather than a generic taxonomy hierarchy.</t>
        </li>
      </ul>
      <t>This document does not define a full conflict-resolution procedure. It defines
the semantic basis that allows comparison to remain computable and
interoperable.</t>
    </section>
    <section anchor="identifier-model">
      <name>Identifier Model</name>
      <section anchor="stable-term-identifiers">
        <name>Stable Term Identifiers</name>
        <t>Stable term identifiers are the primary semantic hook in this taxonomy. The
baseline core vocabulary uses the reserved prefix <tt>ppd:</tt>. A term such as
<tt>ppd:sensorData</tt> or <tt>ppd:householdContext</tt> derives its meaning from the stable
taxonomy definition associated with that identifier.</t>
        <t>A taxonomy release identifier can identify the vocabulary snapshot used for validation, reproducibility, or documentation. For example, a deployment might use a release identifier such as <tt>ppd-core-2026-05</tt>. However, release metadata does not replace the term identifier itself as the source of meaning.</t>
      </section>
      <section anchor="stability-of-term-meanings">
        <name>Stability of Term Meanings</name>
        <t>Once published, a stable term identifier <bcp14>MUST NOT</bcp14> be silently reassigned an
incompatible meaning in a later taxonomy release.</t>
        <t>Later releases <bcp14>MAY</bcp14>:</t>
        <ul spacing="normal">
          <li>
            <t>add new terms;</t>
          </li>
          <li>
            <t>clarify the prose associated with an existing term when the clarification
does not change its comparison semantics; and</t>
          </li>
          <li>
            <t>deprecate a term for future use while preserving its published meaning for
reproducibility and comparison of existing content.</t>
          </li>
        </ul>
        <t>If a later release needs materially different semantics, it <bcp14>MUST</bcp14> define a new
term identifier rather than repurposing the old one.</t>
      </section>
      <section anchor="compact-wire-form">
        <name>Compact Wire Form</name>
        <t><xref target="I-D.draft-dsmullen-ppd-protocol"/> defines compact term identifiers as the participant-facing wire format. The protocol's Taxonomy Context Object carries:</t>
        <ul spacing="normal">
          <li>
            <t>a taxonomy release identifier; and</t>
          </li>
          <li>
            <t>any required non-core prefix declarations.</t>
          </li>
        </ul>
        <t>This keeps participant-facing messages compact while preserving stable
semantics.</t>
      </section>
      <section anchor="extension-namespaces-and-core-primitive-mapping">
        <name>Extension Namespaces and Core-Primitive Mapping</name>
        <t>Organizations <bcp14>MAY</bcp14> define additional terms outside the baseline <tt>ppd:</tt>
vocabulary. When such terms appear in participant-facing protocol messages, the
sender <bcp14>MUST</bcp14> provide the required non-core prefix declarations through the
protocol's taxonomy context.</t>
        <t>For comparison-relevant fields and qualifier families, namespace declaration
alone is not enough. When a non-core term fills <tt>data_type</tt>, <tt>purpose</tt>,
<tt>action</tt>, <tt>source</tt>, or <tt>handling_context</tt>, or supplies a non-core <tt>retention</tt>,
<tt>processing_boundary</tt>, or scoped <tt>jurisdiction</tt> qualifier value, that term
<bcp14>MUST</bcp14> be defined with the semantic relationship or exact reduction by which it
is reduced to the shared core comparison basis for that family.</t>
        <t>A non-core term that does not satisfy the semantic validity conditions above
is invalid taxonomy content for baseline participant-facing use, even if the
identifier syntax and namespace declaration are otherwise well-formed.</t>
        <t>Non-core terms also <bcp14>MUST NOT</bcp14> introduce policy modality into the taxonomy
layer. An extension term can refine a field or qualifier concept, but it
cannot turn that concept into an encoded policy effect such as "prohibited"
or "required". Those meanings belong in policy rules, not in taxonomy terms.</t>
        <t>That relationship can include equivalence or broader/narrower placement where
the field participates in subsumption, or exact reduction where it does not, so
long as it preserves computable comparison against the shared core floor. For
<tt>jurisdiction</tt>, that comparison basis is the qualifier's declared <tt>scope</tt>
together with the <tt>countrycode</tt> and <tt>subdivisioncode</tt> model defined above.</t>
        <t>For field families that participate in subsumption, a non-core refinement
<bcp14>MUST</bcp14> identify exactly one immediate broader term and <bcp14>MUST</bcp14> remain reducible by
repeated application of that relationship to one core term in the same family.
For field families that do not participate in subsumption, exact reduction or
the family-specific comparison rules defined by this document apply.</t>
        <t>For example, an organization might define:</t>
        <ul spacing="normal">
          <li>
            <t><tt>vendorx:temperatureReading</tt> as a narrower <tt>data_type</tt> under
<tt>ppd:sensorData</tt>;</t>
          </li>
          <li>
            <t><tt>vendorx:userRequestedRemoteViewing</tt> as a narrower <tt>purpose</tt> under
<tt>ppd:coreFunctionality</tt>;</t>
          </li>
          <li>
            <t><tt>vendorx:cameraSensor</tt> as a narrower <tt>source</tt> under
<tt>ppd:participantObserved</tt>; or</t>
          </li>
          <li>
            <t><tt>vendorx:edgeHubOnly</tt> as a narrower <tt>processing_boundary</tt> under
<tt>ppd:inHomeOnly</tt>.</t>
          </li>
        </ul>
        <t>Handling-context refinements follow the same rule. For example:</t>
        <ul spacing="normal">
          <li>
            <t><tt>vendorx:vendorCloudService</tt> can be a narrower <tt>handling_context</tt> under
<tt>ppd:vendorContext</tt>;</t>
          </li>
          <li>
            <t><tt>vendorx:dataBrokerService</tt> can be a narrower <tt>handling_context</tt> under
<tt>ppd:thirdPartyContext</tt>; and</t>
          </li>
          <li>
            <t>a named entity such as <tt>vendorx:exampleServices</tt> is only meaningful if the
refinement defines which handling-context role is involved. The same organization
might reduce to <tt>ppd:vendorContext</tt> when acting as the participant's own
vendor service, or to <tt>ppd:thirdPartyContext</tt> when acting as an unrelated
recipient.</t>
          </li>
        </ul>
        <t>Such terms can be useful, but they remain baseline-interoperable only when
their relationship to the relevant core fields is explicit enough that
participants and household policy services can compare them meaningfully.</t>
        <t>This document does not define who is authorized to publish extension
vocabularies, how ecosystems vet them, or what registry or profile structure
may later be used to manage them. Those governance and publication-trust
questions are out of scope for this revision. The focus here is narrower:
what participant-facing terms and refinements are semantically valid for
baseline interoperable computation.</t>
      </section>
    </section>
    <section anchor="use-in-ppd-messages">
      <name>Use in PPD Messages</name>
      <t>The protocol and taxonomy have different jobs:</t>
      <ul spacing="normal">
        <li>
          <t>the protocol carries which atomic combinations a participant asserts or a household policy applies; and</t>
        </li>
        <li>
          <t>the taxonomy defines what the terms used in those combinations mean.</t>
        </li>
      </ul>
      <t>This distinction matters. A flat bag of supported data types, purposes, actions, and handling contexts is not enough to describe which combinations actually apply to a participant. The protocol therefore carries atomic declaration statements and atomic policy rules, while this taxonomy defines the term spaces and qualifier meanings used in those objects.</t>
      <t>The protocol wire object for qualifiers is named <tt>constraints</tt>, but the
semantics described here are qualifier semantics on those atomic dataflows.</t>
      <t>When those objects use non-core comparison-relevant terms, the objects remain
baseline-computable only if those terms are reducible to the shared core model
through the extension and mapping rules above.</t>
      <t>A declaration statement example is:</t>
      <sourcecode type="json"><![CDATA[
{
  "statement_id": "temperature-product-improvement",
  "data_type": "ppd:sensorData",
  "purpose": "ppd:analyticsAndImprovement",
  "action": "ppd:transfer",
  "source": "ppd:participantObserved",
  "handling_context": "ppd:vendorContext",
  "constraints": {
    "retention": "ppd:indefinite"
  }
}
]]></sourcecode>
      <t>A corresponding effective-policy rule example is:</t>
      <sourcecode type="json"><![CDATA[
{
  "rule_id": "r1",
  "data_type": "ppd:contentData",
  "purpose": "ppd:security",
  "action": "ppd:use",
  "source": "ppd:participantObserved",
  "handling_context": "ppd:householdContext",
  "effect": "allow",
  "constraints": {
    "processing_boundary": "ppd:onDeviceOnly"
  }
}
]]></sourcecode>
      <t>The taxonomy defines the meaning of the identifiers in these objects. The protocol defines how those objects are carried, validated, acknowledged, and kept current.</t>
    </section>
    <section anchor="relationship-to-richer-semantic-frameworks">
      <name>Relationship to Richer Semantic Frameworks</name>
      <t>Implementations <bcp14>MAY</bcp14> maintain richer local semantic artifacts, mappings, or
tool-specific representations where useful. However, baseline participant-
facing interoperability does not depend on carrying a full ontology or graph
model on the wire. The participant-facing contract remains the compact term
identifiers and taxonomy context defined by
<xref target="I-D.draft-dsmullen-ppd-protocol"/>, backed by the shared semantic floor
defined here.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>Semantic drift, ambiguous extensions, and unresolved terms can undermine privacy signaling even when transport security is strong.</t>
      <t>Organizations publishing extension vocabularies for comparison-relevant fields
need stable meanings and explicit reduction back to the shared core primitives.
Participant-facing services and participants <bcp14>SHOULD NOT</bcp14> silently treat
unresolved, unmapped, or unusable taxonomy terms as equivalent to known terms.</t>
      <t>When comparison-relevant extension terms cannot be reduced to the shared core,
the correct baseline result is failure or indeterminate handling, not silent
fallback to a broader local guess.</t>
      <t>When unresolved or unsupported terms appear in participant-facing protocol messages, the handling defined by <xref target="I-D.draft-dsmullen-ppd-protocol"/> applies. In particular, unresolved terms in normative policy content are more serious than unresolved descriptive detail because they can change the meaning of an allowed or denied handling path.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>This document requests no IANA actions.</t>
    </section>
  </middle>
  <back>
    <references anchor="sec-combined-references">
      <name>References</name>
      <references anchor="sec-normative-references">
        <name>Normative References</name>
        <reference anchor="RFC2119">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references anchor="sec-informative-references">
        <name>Informative References</name>
        <reference anchor="I-D.draft-dsmullen-ppd-architecture">
          <front>
            <title>Privacy Preference Declaration for Home Networks</title>
            <author fullname="Daniel Smullen" initials="D." surname="Smullen">
              <organization>CableLabs</organization>
            </author>
            <author fullname="Brian Scriber" initials="B." surname="Scriber">
              <organization>CableLabs</organization>
            </author>
            <date day="20" month="May" year="2026"/>
            <abstract>
              <t>   This document describes an architecture for signaling household
   privacy preferences to devices in home networks through Privacy
   Preference Declarations (PPDs).  The architecture enables a PPD
   participant to discover a PPD service endpoint, establish trust in
   that endpoint through the applicable protocol and security profile,
   retrieve the applicable household policy instance, and acknowledge
   receipt of that policy instance.  The acknowledgment establishes that
   a specific policy instance was made available to the participant; it
   does not, by itself, assert anything about the participant's
   subsequent behavior.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dsmullen-ppd-architecture-08"/>
        </reference>
        <reference anchor="I-D.draft-dsmullen-ppd-protocol">
          <front>
            <title>Privacy Preference Declaration Protocol Specification</title>
            <author fullname="Daniel Smullen" initials="D." surname="Smullen">
              <organization>CableLabs</organization>
            </author>
            <author fullname="Brian Scriber" initials="B." surname="Scriber">
              <organization>CableLabs</organization>
            </author>
            <date day="20" month="May" year="2026"/>
            <abstract>
              <t>   This document specifies a participant-facing protocol for Privacy
   Preference Declarations (PPDs) in home networks.  The protocol is
   between a home-side PPD service endpoint and a device-side actor,
   formally the PPD participant, which is a device or a service acting
   on behalf of a device.  It defines baseline operations for endpoint
   metadata confirmation, participant registration, optional participant
   declaration, effective-policy retrieval, policy acknowledgment,
   renewal, and reassociation.  This document complements the PPD
   architecture and taxonomy documents by defining the message and
   sequencing behavior needed for interoperable policy signaling.

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dsmullen-ppd-protocol-02"/>
        </reference>
        <reference anchor="RFC8006">
          <front>
            <title>Content Delivery Network Interconnection (CDNI) Metadata</title>
            <author fullname="B. Niven-Jenkins" initials="B." surname="Niven-Jenkins"/>
            <author fullname="R. Murray" initials="R." surname="Murray"/>
            <author fullname="M. Caulfield" initials="M." surname="Caulfield"/>
            <author fullname="K. Ma" initials="K." surname="Ma"/>
            <date month="December" year="2016"/>
            <abstract>
              <t>The Content Delivery Network Interconnection (CDNI) Metadata interface enables interconnected Content Delivery Networks (CDNs) to exchange content distribution metadata in order to enable content acquisition and delivery. The CDNI Metadata associated with a piece of content provides a downstream CDN with sufficient information for the downstream CDN to service content requests on behalf of an upstream CDN. This document describes both a base set of CDNI Metadata and the protocol for exchanging that metadata.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="8006"/>
          <seriesInfo name="DOI" value="10.17487/RFC8006"/>
        </reference>
        <reference anchor="RFC9388">
          <front>
            <title>Content Delivery Network Interconnection (CDNI) Footprint Types: Country Subdivision Code and Footprint Union</title>
            <author fullname="N. Sopher" initials="N." surname="Sopher"/>
            <author fullname="S. Mishra" initials="S." surname="Mishra"/>
            <date month="July" year="2023"/>
            <abstract>
              <t>&lt;p&gt;Open Caching architecture is a use case of Content Delivery Network Interconnection (CDNI) in which the commercial Content Delivery Network (CDN) is the upstream CDN (uCDN) and the ISP caching layer serves as the downstream CDN (dCDN). RFC 8006 defines footprint types that are used for footprint objects as part of the Metadata interface (MI). The footprint types are also used for the Footprint &amp; Capabilities Advertisement interface (FCI) as defined in RFC 8008. This document defines two new footprint types. The first footprint type defined is an ISO 3166-2 country subdivision code. Defining this country subdivision code improves granularity for delegation as compared to the ISO 3166-1 country code footprint type defined in RFC 8006. The ISO 3166-2 country subdivision code is also added as a new entity domain type in the "ALTO Entity Domain Types" registry defined in Section 7.4 of RFC 9241. The second footprint type defines a footprint union to aggregate footprint objects. This allows for additive semantics over the narrowing semantics defined in Appendix B of RFC 8008 and therefore updates RFC 8008. The two new footprint types are based on the requirements raised by Open Caching but are also applicable to CDNI use cases in general.&lt;/p&gt;</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="9388"/>
          <seriesInfo name="DOI" value="10.17487/RFC9388"/>
        </reference>
      </references>
    </references>
    <?line 918?>

<section numbered="false" anchor="acknowledgments">
      <name>Acknowledgments</name>
      <t>The authors thank the participants in the related PPD architecture, protocol, and implementation discussions for the feedback that shaped this taxonomy direction.</t>
    </section>
  </back>
  <!-- ##markdown-source:
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
/wCk6jV9IacAAA==

-->

</rfc>
