RE: Hypermedia - Why

Hi Davids,

> 
> > Yes. I do. If xxxx means "comment" or "DO NOT GO THERE" the 
> last thing 
> > you want is some naive process seeing xml:href and going 
> there because 
> > it sees
> > 
> > <xxxxx xml:href="bad.place"/>
> > 
> 
> 
> I have to agree with this.
> I would like to see a case where knowing an attribute is a 
> URI  is sufficient to take any action.
> Examples where having to know is critical

It's not just about URIs, but also about the application state.  The
media type (designer) defines what the xxxxx element means, and what attributes
it has, and what those attributes mean (except the xml: ones).

In order to change application state, the client has to make choices.
Language and format are prominent among these, but other factors need to
be taken into account also. For example, what http method should be used
in a particular instance, what parameters are necessary to a (given) URI, what order
they should be in, what values they may have, and possibly others.

If I'm wrong, the hypermedia portion of the audience can chime in here.

> 
> <img src="uri"> means Fetch uri and display it inline <a 
> href="uri"> means "If you click here in a browser replace the 
> viewport with a new one 

What does href="uri" mean to a crawler, or img@src for that matter?  Different things
for the different user agents, I think.

<base xml:base="uri">  means if you 
> need to resolve URI's in OTHER contexts use this as the base .... 

What other context?  The context is the scope of the element holding the xml:base 
attribute?  Would be nice to be able to reliably identify what is a URI in that
context, so the application would not have to do that resolution itself?

> <rdf subject="uri" predicate="uri2" verb="uri3">  means there 
> is a relationship between the objects identified by uri1,uri2,uri3 ...

Yikes.  Not going there!  I understand it is like looking in a mirror in a mirror ...

>  
> Very very different behaviours and meaning depending on 
> context - ie the specific vocabulary.

src means "that thing over there, in here, somehow", href means "over there", YMMV.  If you are designing a crawler
href may mean "suck the content out and put in the index". URI means RFC 3986, AFAIK.

> 
> So I would like to see an example where without context 
> knowing something is a URI (or even URL) has useful meaning.

As I mentioned, the media type defines the meanings of the elements in a response,
so I don't think there will be a case where the meaning is undefined, except 
perhaps application/xml since there are no elements in that media type. 

So perhaps, if I did mention application/xml as suddenly becoming semantically enhanced, I was wrong.

But hypermedia vowels still wouldn't hurt it, AFAICT (backwards-compatible), and they will
help with future vocabularies. 

One recent example that I came across on Mike's hypermedia group is a <sort> form, 
which would in theory allow a hypermedia client to sort on arbitrary server side fields.

I wonder if designing this little control on the wiki would be a useful example of a vocabulary that
would benefit from xml: hypermedia vowels?  It would be rather like MathML, in that it
would be intended to be included in other vocabularies.  Perhaps we could just pretend
that namespaces (except xml:) and schemas don't exist for the sake of simplicity?

I have been so busy fighting email today I haven't really addressed the question of 'why', I think.

How are we doing?

Peter

Received on Wednesday, 25 July 2012 18:12:32 UTC