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

 


Help: OASIS Mailing Lists Help | MarkMail Help

office-metadata message

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


Subject: Re: [office-metadata] Define a Mechanism to Associate Metadata with Content?



On Sep 14, 2006, at 8:00 AM, John C Barstow wrote:

> Personally I think considering TRiX would address some of the concerns
> we're likely to face. It's XML based, friendly to XPath, allows for
> QNames (explicitly, rather than implicitly), and is unambiguous syntax.
> I also like it because it supports named graphs, a feature that avoids
> the problems of reification and addresses use cases such as versioning
> and/or signing metadata blocks.

I think the syntax is important, but really have no firm position on 
the precise details, except that it should be clear, easy to validate 
(with RELAX NG), etc.

I managed to create a generic RNG validator for a constrained RDF/XML 
syntax that I think fits these requirements, though we certainly ought 
to be willing to consider alternatives.

TRiX is nice if for no other reason that it shows how damned simple the 
model is.

Here's the XSD schema converted (by hand ... in ten minutes!) to RNC:

=====

namespace trix = "http://www.w3.org/2004/03/trix/trix-1/";

start = element trix:TriX { trix-graph* }

trix-graph = element trix:graph { trix-uri*, trix-triple* }

trix-triple = element trix:triple { trix-subject, trix-predicate, 
trix-object }

div {
   trix-subject = trix-subject-object
   trix-predicate = trix-uri
   trix-object = trix-subject-object

   trix-subject-object = trix-id | trix-uri | trix-plain-literal | 
trix-type-literal
}

div {
   trix-uri = element trix:uri { xsd:anyURI }
   trix-id = element trix:id { text }
   trix-plain-literal = element trix:plainLiteral { attribute xml:lang { 
xsd:language }, text }
   trix-typed-literal = element trix:typedLiteral { attribute datatype { 
xsd:anyURI }, text }
}

====

Bruce



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