[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Semantic Web permathread, iteration n+1 (was Re:


rdf striping
Thanks Joshua [more below -- to anyone]

Joshua Allen wrote:

> OK, I'll give some more detailed example.  One of the things that
> Chandler, WinFS, and many other systems store is a "Person" item.  The
> Person can be used as a contact in an address book, as an entry in the
> IM client, and so on.  Another possible thing would be a "Picture" item,
> which represents a media file. 
> 
> So the basic data model is this -- you have "items", "properties", and
> "values".
> "item" - a thing like "Person" or "Picture", about which you can make
> statements.  The same as RDF "subject".
> "property" - a named aspect of an item, such as "PhoneNumber" or
> "PictureDate".  The same as RDF "predicate".
> "value" - the value you are asserting for the property, can be a literal
> or even another "item".  The same as RDF "object".
> 
> One name that programmers use for this data model is "property bag".
> Basically you can assign property values by name, and stick whatever you
> want on the property bag.  For example:
> 
> Person p = new Person();
> p["PhoneNumber"] = "+1-425-882-8080";
> p["someRandomPropertyIMadeUp"] = "fooBar";
> p["Depiction"] = new Picture("foo.jpg");
> p.Save();
> 
> This is a really common pattern for systems which have a lot of
> variability in schema.  For example, this is how MS Exchange and Lotus
> notes have modeled messages for at least a decade.  You can stick new
> properties on a message without problems.  This is essentially the model
> of LDAP and ADSI as well, since objects in a directory could have all
> sorts of important properties that vary by organization.  This is also a
> natural way to model a media file, since you have things like "album",
> "composer", "length", "dimensions" -- metadata which may not always be
> available, or availability which may change in the future, or metadata
> which may be sourced from multiple locations (imdb, musicbrainz, etc).
> 
> SO, the question is, are these scenarios best suited to XML?  Obviously
> there have been XML formats developed for interchange of these formats
> (like DSML for directories, iCard for contact info, etc.)
> 
> The XML you demonstrated is not bad.  Basically you are saying that
> elements always maps to items, attributes always map to predicates, and
> attribute values map to values.  You also have some implicit property
> (maybe named "children") to which child elements map.  This is a bit
> different from Mark Baker's example, where elements mapped to items, but
> child elements mapped to properties (and I assume this alternates; which
> is known as "striping" in RDF, and the source of much distaste).  But
> maybe you are seeing the issue with XML.  With XML, you have to have a
> convention for which stuff maps to (s, p, o), where with RDF it isn't a
> matter of choice.


OK, 'striping' is the term I guess I have been missing. It seems to 
mean: provide an appropriate container element when making a hierarchy. 
I believe I have that by using a schema and even more so with our gui 
tool. Is the XML I posted basically equal to striped RDF?

Why is there distaste for striping, as you mentioned?

It seems to me striped RDF is basically a formalized XML hierarchy, as 
you wrote. If that is correct and it is a valid approach, why are people 
saying hierarchies are bad? Or is it just that informal hierarchies are 
bad? I guess I have been concerned about all the 'hierarchies [expletive deleted]' 
statements; I have been assuming a striping syntax.

I googled 'striping rdf' (without quotes). What I saw did not show a 
distaste for striping. It seemed like people where saying it was 
necessary. I came up with the w3 description (there could be a much 
better RDF example):

http://www.w3.org/2001/10/stripes/

, a post to xml-dev by Len Bullard:

http://lists.xml.org/archives/xml-dev/200208/msg01314.html

"Tools that could provide
assistance to striping the RDF into the XML open
up a lot of content to the SemWeb processors without
asking producers to spend a lot of effort understanding
RDF."

and then John Cowan followed up a few posts down with:

http://lists.xml.org/archives/xml-dev/200208/msg01319.html

"As for misinterpretation, a better term would be
interpretation that is inappropriate: if the strict alternation of
resource/property/resource/property striping is not maintained, you
may get junk assertions that mix up resources and properties.
That's why I said that semanticless container elements should be
avoided if RDF interpretation is desirable."

But if a schema and a tool enforces the relationships, all is good, right?

thanks for explaining,
-Rob


> 
> 
> 
>>-----Original Message-----
>>From: Robert Koberg [mailto:rob@k...] 
>>Sent: Friday, June 04, 2004 10:11 AM
>>To: Joshua Allen
>>Cc: XML Developers List
>>Subject: Re:  Semantic Web permathread, iteration 
>>n+1 (was Re:  InfoWorld agrees with Elliote Rusty Harold)
>>
>>Joshua Allen wrote:
>>
>>
>>>scenarios.  OSAF Chandler is based on "triples", as is 
>>
>>Longhorn's WinFS.
>>
>>I am trying to get a handle on this issue. Can you post an 
>>example or link of WinFS XML(?) or triples? I have googled 
>>around but only find blog entries with no examples. 
>>Specifically, what does a 'folder' within a 'folder' look 
>>like? Is a page the end, or in other words is it the content?
>>
>>For me, it is easier to represent it as a light hierarchy and 
>>pull in extra metadata/content when needed. I keep minimal 
>>metadata in the hierarchy and then more metadata/content for 
>>each node is kept in a separate file. The extra metadata 
>>further references the content assigned in a region element 
>>-- so a page is basically a 'folder' of content pieces 
>>(content assigned at the folder level cascades down to the 
>>pages in that folder). For example here is the hierarchical
>>representation:
>>
>><site xmlns="http://livestoryboard.com/schemas/lsb" generate="1" 
>>label="Home"
>>   id="demo_root" css="default.css" xsl="default" name="DEMO" 
>>index_page="site_ind">
>>   <page generate="1" id="site_ind" label="Welcome" 
>>name="Welcome.html"/>
>>   <folder generate="1" label="Destinations" id="f1034364271" 
>>onnav="1"
>>     name="Destinations" index_page="p1958461133">
>>     <page generate="1" id="p1958461133" label="Introduction 
>>to Destinations" name="destinations.html"/>
>>     <folder generate="1" label="Sailing" id="f611591524" onnav="1" 
>>name="Sailing" index_page="p1211385515">
>>       <page generate="1" id="p1211385515" 
>>label="Introduction to Sailing" name="sailing.html"/>
>>     </folder>
>>   </folder>
>>   <topic label="content_root" id="t339321861" xsl="topics" 
>>name="t339321861">
>>     <content label="homepromo" id="c682201793" name="tester.html"/>
>>     <content label="placeholder" id="c780459541" 
>>name="placeholder.html"/>
>>     <content label="right" id="c807589041" name="c807589041.html"/>
>>     <topic id="t235257654" label="Test Topic" 
>>name="TestTopic" generate="1"
>>       onnav="1" xsl="topics">
>>       <content id="c408766032" label="Article 1" name="Article1.html"
>>         generate="1" onnav="1"/>
>>     </topic>
>>   </topic>
>></site>
>>
>>And here is extra metadata from a single page above (named 
>>p1958461133.xml):
>>
>><md-page xmlns="http://livestoryboard.com/schemas/lsb"
>>   created="2004-03-28T09:22:57" creator="rkoberg" 
>>last_mod_by="ikoberg"
>>   modified="2004-05-03T09:51:54" status="editorial">
>>   <title>A longer title than the label</title>
>>   <description>All about cool sailing destinations.</description>
>>   <regions>
>>     <region name="narrowColumn">
>>       <content ref="c408766032"/>
>>     </region>
>>     <region name="wideColumn">
>>       <content ref="c780459541"/>
>>       <content ref="c682201793"/>
>>     </region>
>>   </regions>
>>   <property name="somename">some value</property> </md-page>
>>
>>best,
>>-Rob
>>
>>
>>
>>
> 
> 


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.