OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xri message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: 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

 

 

 



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]