RE: [xri] Feedback requested on terms used in Metadata spec

From
Wachob, Gabe <>
Date
2006-01-12T00:29:23+00:00
ID
Thread
RE: [xri] Feedback requested on terms used in Metadata spec
Marty-

    Are you saying that metadata XREFs should have a 
way of saying "the thing identified to the left of me" vs. "the thing identified 
to the right of me" ? So, in the pattern of:

 xri-metadata       = "$" predicate [ 
“*” object ] “*” subject 

   you might have:

=GabeW*resume*($v*left*1.2)  -- indicating version 1.2 of my 
resume

vs.

=GabeW*resume*($v*right*2002-10-10T17:00:00Z)*job -- 
indicating my job as of 10/10/02? 

 

   I guess I'm confused about 
the concept of having a *choice* about what the metadata applies to.. I don't 
quite understand how/why these metadata xrefs "apply" to parts of the XRI. In 
that sense, I guess I'm saying that I don't understand how the subject is *part* 
of an XRI. It would seem to me that the subject has to be explicit if you are to 
have the Subject-Predicate-Object model. 

 

  Can 
we state succinctly what it means when such a S-P-O triple appears in an XRI? 
What inference do we draw by its mere presence? Isn't it just a convenient way 
to qualify everything to the right of the metadata XREF, and nothing more? 

 

  
-Gabe 

  

  
  From: Schleiff, Marty 
  [mailto:] 
Sent: Wednesday, January 11, 
  2006 4:19 PM
To: Wachob, Gabe; Drummond Reed; 
  
Subject: RE: [xri] Feedback requested on 
  terms used in Metadata spec

  

  
Hi Gabe (& All),

  
 

  
Drummond and I have discussed/debated at length how to 
  express the portion of an XRI to which metadata applies. We determined that 
  the only way to clearly associate metadata with the intended subject of the 
  metadata is to include the subject and metadata within the same xref. How 
  metadata associates with portions of the XRI outside the metadata xref is up 
  to the XRI issuer. This is one of several concepts for which we're interested 
  in reactions from the rest of the TC. There are other issues, but rather than 
  point them out, I'll be interested to see if you recognize them on your 
  own.

  
 

  
; CISSP 
Associate Technical Fellow - Cyber Identity 
  Specialist 
Computing Security Infrastructure 
(425) 957-5667 

  
 

  

  
  From: Wachob, Gabe [mailto:] 
  
Sent: Wednesday, January 11, 2006 12:54 PM
To: Drummond 
  Reed; 
Subject: RE: [xri] Feedback requested 
  on terms used in Metadata spec

  

  
I guess I'm partial to the RDF-mindset, but I'm thinking 
  that it is an odd fit to make that tight a connection to the S-P-O model since 
  its not clear what the actual *subject* is in all cases - to wit, isn't the 
  subject the thing outside the metadata cross-reference? Doesn't the Metadata 
  XREF explicitly describe/refer to something *outside* the metata XREF? 
  

  
 

  
If we *could* mesh this with RDF concepts, that'd would 
  be interesting.

  
 

  
Otherwise, I don't have a strong preference between the 
  other four items. They all seem pretty isomorphic to me, without having 
  thought about this very deeply. 

  
 

  
    
  -Gabe

  
    

    
    From: Drummond Reed 
    [mailto:] 
Sent: Wednesday, January 11, 
    2006 11:45 AM
To: 
Subject: 
    [xri] Feedback requested on terms used in Metadata spec

    

    

    
I'm happy to report that Marty and I, after a series 
    of in-depth work sessions (abetted by Dave McAlpin when he's been in town), 
    believe we have wrestled the metadata dragon most of the way to the 
    ground.

    
 

    
The "dragon" is a tighter, more consistent ABNF for 
    all forms of XRI metadata as well as a much cleaner set of rules about what 
    it describes.

    
 

    
Without going into all the gory detail, what XRI 
    Metadata 2.0 Working Draft 08 will recommend is a very simple ABNF for 
    "tagging" an identifier with XRI metadata, which can then be used as a 
    cross-reference inside another XRI. The important clarification we will be 
    making is that this metadata only describes the "subject" identifier (the 
    identifier being described, to borrow term from RDF). For example, in the 
    XRI…

    
 

    
      
    xri://xri.example.com/some/filename*($v*2.3)

    
 

    
…the metadata "$v" only describes the identifier 
    "2.3". It tells you it’s a version number. That's it. From the identifier 
    above, it would be a pretty obvious conclusion that the identifier authority 
    intended the cross-reference "($v*2.3)" to identify a version namespace for 
    the resource identifier by "filename". However in the following 
    XRI…

    
 

    
      
    xri://xri.example.com/some/filename*($v*2.3)*anotherfile

    
 

    
…it may not be quite as clear – does the identifier 
    "($v*2.3)" create a version namespace for "filename" or for 
    "anotherfile"?

    
 

    
The answer is: that's up to the identifier authority 
    and out of scope for the XRI Metadata spec. The scope of the Metadata spec 
    is limited to defining well-known semantics and syntax for a limited set of 
    broadly useful identifier metadata (versions, dates, languages, types, and 
    annotations).

    
 

    
With that explained, here's what we'd like feedback 
    on: the semantics of the actual production names used in the ABNF – which 
    (per our experience with XRI syntax) we'd like to match up with the terms 
    used in the text of the Metadata spec itself. 

    
 

    
Following are four "versions" of the ABNF that are 
    all identical structurally but different in the production names for the 
    first two of the three productions in the proposed syntax. (Marty and I both 
    like the term "subject" for the third component -- the identifier being 
    described -- since this is consistent with RDF and SAML and other similar 
    uses.)

    
 

    
We'd just like to know which of these (if any) are 
    preferred by other members of the TC, since semantics is not something that 
    can be determined by fiat. Please send a reply email to the list with a 
    comment about your preference if you have one (or a different suggestion if 
    you feel something else altogether would work 
    better).

    
 

    
Thanks,

    
 

    
=Drummond and Marty

    
 

    
Example 1 ("tag" 
    wording)

    

    
 xri-metadata        
    = "$" metadata-tag [ “*” metadata-tag-value ] “*” subject 
    

    
 metadata-tag        
    = ( alpha / xref )

    
 metadata-tag-value  = ( xri-subseg / 
    xref )

    
 subject             
    = ( xri-subseg / xref )

    
Example 2 ("attribute" 
    wording)

    

    
  xri-metadata       = 
    "$" attribute [ “*” attribute-value ] “*” subject 
    

    
  
    attribute          = ( alpha / 
    xref )

    
  attribute-value    = ( 
    xri-subseg / xref )

    
  
    subject            = 
    ( xri-subseg / xref )

    
Example 3 ("property" 
    wording)

    

    
  xri-metadata       = 
    "$" property [ “*” property-value ] “*” subject 
    

    
  
    property           = ( 
    alpha / xref )

    
  property-value     = ( 
    xri-subseg / xref )

    
  
    subject            = 
    ( xri-subseg / xref )

    
Example 4 ("RDF" 
    wording)

    

    
  xri-metadata       = 
    "$" predicate [ “*” object ] “*” subject 

    
  
    predicate          = ( alpha / 
    xref )

    
  
    object             
    = ( xri-subseg / xref )

    
  
    subject            = 
    ( xri-subseg / xref )

    
 

    
Examples of the five types of XRI 
    metadata:

    
($l*fr*pays)

    
($t*ces* 
    john%20henry%20doe)

    
($v*2.3)

    
($d*2002-10-10T17:00:00Z)

    
($-*some.comment.here)

    
 

    
How these examples parse to the ABNF 
    above:

    
 

    
      
      

        
          
First 
          production

        
          
Second 
          production

        
          
Subject

      

        
          
$l

        
          
*fr 
          

        
          
*pays

      

        
          
$t

        
          
*ces

        
          
*john%20henry%20doe

      

        
          
$v

        
          
*number 
          (default – can be omitted)

        
          
*2.3

      

        
          
$d

        
          
*XMLdatetime (default – can be 
          omitted)

        
          
*2002-10-10T17:00:00Z

      

        
          
$-

        
          
*string 
          (default – can be omitted)

        
          
*some.comment.here