TokenNegotiationExamples

Using an empty token.filter

Take this web page for example, which provided 2 TokenScripts (TokenA.xml and TokenB.xml) and an empty token fitler (all inclusive):

<!DOCTYPE html>
                <html lang="en">
                <head>
                <meta charset="UTF-8"/>
                <link rel="tokenscript" href="TokenA.xml"/>
                <link rel="tokenscript" href="TokenB.xml"/>
                <meta name="token.filter" content=""/>
                <script type="module" src="tokenscript-bootstrap.js" ></script>
                …
SituationResult of the negotiation
If the user agent doesn't support TokenScript, and bootstrap library is usedCan only contain instances of TokenA and TokenB
If the user agent supports TokenScript but the user doesn't have any tokens.Can only contain instances of TokenA and TokenB
If the user agent supports TokenScripts and already have TokenScripts cached for user's tokens TokenC and TokenDCan contain instances of TokenA, TokenB, TokenC, and TokenD.

Using an non-empty token.filter

Take this web page for example, which provided 2 TokenScripts (TokenA.xml and TokenB.xml) and an empty token fitler (all inclusive):

<!DOCTYPE html>
                <html lang="en">
                <head>
                <meta charset="UTF-8"/>
                <link rel="tokenscript" href="TokenA.xml"/>
                <link rel="tokenscript" href="TokenB.xml"/>
                <meta name="token.filter" content="expiry=*"/>
                <script type="module" src="tokenscript-bootstrap.js" ></script>
                …
SituationResult of the negotiation
If the user agent doesn't support TokenScript, and bootstrap library is usedCan only contain instances of TokenA and TokenB
If the user agent supports TokenScript but the user doesn't have any tokens.Can only contain instances of TokenA and TokenB
If the user agent supports TokenScripts and already have TokenScripts cached for user's tokens TokenC and TokenD, where: TokenC.expiry = 2021-01-01, and TokenB does not have expiry attribute.Can contain instances of TokenA, TokenB, and TokenC
We make tokens smart

Smart Token Labs is the creator of TokenScript and AlphaWallet two open source solutions for a tokenized future.