Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-13 Thread Giovanni Gentili
Martin Atkins wrote:
 One problem this can solve is that an agent can, given a URL that
 represents a person, extract some basic profile information such as the
 person's name along with references to other people that person knows.
 This can further be applied to allow a user who provides his own URL
 (for example, by signing in via OpenID) to bootstrap his account from
 existing published data rather than having to re-enter it.

 So, to distill that into a list of requirements:

 - Allow software agents to extract profile information for a person as often
 exposed on social networking sites from a page that represents that person.

 - Allow software agents to determine who a person lists as their friends
 given a page that represents that person.

 - Allow the above to be encoded without duplicating the data in both
 machine-readable and human-readable forms.

 Is this the sort of thing you're looking for, Ian?

Much of the above section could be applied to any other RDF vocabulary
with a bit of search and replace, but I'll leave that to others since
FOAF is the only RDF vocabulary with which I have any experience.

Why we must restrict the use case to a single vocabulary
or analyze all the possibile vocabularies?

I think it's be better to generalize the problem
and find a unique solution for human/machine.

I tried to expose this here...

http://lists.w3.org/Archives/Public/public-html/2009Jan/0082.html

...where the fundamental problem is described in this way:

- User agents must allow users to see that there are semantic-links
(connections to semantically structured informations)
in a HTML document/application. Consequently
user agents must allow users to follow the semantic-link,
(access/interact with the linked data, embedded or external)
and this involves primarily the ability to:
a) view the informations
b) select the informations
c) copy the informations in the clipboard
d) drag and drop the informations
e) send that informations
to another web application
(or to OS applications)
selected by the user.

-- 
Giovanni Gentili


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-13 Thread James Graham

Giovanni Gentili wrote:


Why we must restrict the use case to a single vocabulary
or analyze all the possibile vocabularies?

I think it's be better to generalize the problem
and find a unique solution for human/machine.


The issue when trying to abstract problems is that you can end up doing 
architecture astronautics; you concentrate on making generic ways to 
build solutions to weakly constrained problems without any attention to 
the details of those problems that make them unique. The solutions that 
are so produced often have the theoretical capacity to solve broad 
classes of problem, but are often found to be poor at solving any 
specific individual problem.


By looking at actual use cases we can hope to retain enough detail in 
the requirements that we satisfy at least some use cases well, rather 
than wasting out time building huge follies that serve no practical 
purpose to anyone.


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-13 Thread Giovanni Gentili
James Graham:
 The issue when trying to abstract problems is that you can end up doing
 architecture astronautics; you concentrate on making generic ways to build
 solutions to weakly constrained problems without any attention to the
 details of those problems that make them unique.

I think the right level, like in my proposal,
is greatly under astronautics
but no so low as single vocabularies.

-- 
Giovanni Gentili


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-13 Thread James Graham

Giovanni Gentili wrote:

James Graham:

The issue when trying to abstract problems is that you can end up doing
architecture astronautics; you concentrate on making generic ways to build
solutions to weakly constrained problems without any attention to the
details of those problems that make them unique.


I think the right level, like in my proposal,
is greatly under astronautics
but no so low as single vocabularies.



I rather disagree. How we interact with information depends 
fundamentally on the type of information. If the information is a set of 
geographical coordinates, for example, the set of useful interactions 
are rather different to those for a bibliographic entry. Trying to 
pretend that the two problems are just interchangeable instances of the 
same semantically structured information problem is likely to hide the 
important distinctions between the two problem domains.


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-12 Thread Julian Reschke

Martin Atkins wrote:

...
If it is true that RDFa can work today with no ill-effect in downlevel 
user-agents, what's currently blocking its implementation? Concern for 
validation?


It seems to me that many HTML extensions are implemented first and 
specified later[1], so perhaps it would be in the interests of RDFa 
proponents to get some implementations out there and get RDFa adopted, 
at which point it will hopefully seem a much more useful proposition for 
inclusion in HTML5.


In the short term the RDFa community can presumably provide a 
specialized HTML5 + RDFa validator for adopters to use until RDFa is 
incorporated into the core spec and tools.


It would seem that it's much easier to get into the spec when your 
feature is proven to be useful by real-world adoption.

...


What he said.

Although I *do* believe that in the end we'll want RDFa-in-HTML5, what's 
really important right now is *not* RDFa-in-HTML5 but RDFa-in-HTML4. 
Define that, make it a success, and the rest will be simple.


Best regards, Julian


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-12 Thread Toby A Inkster

Martin Atkins wrote:


  * Some sites are already publishing XFN and/or hCard so consuming
software would need to continue to support these in addition to
FOAF-in-HTML-somehow, which is more work than supporting only XFN and
hCard.


Mitigating this though is GRDDL which allows the hCard+XFN to be  
parsed using a subset of FOAF (e.g. http://weborganics.co.uk/hFoaF/)  
and thus merged with FOAF available as RDF/XML, RDFa, etc.


--
Toby A Inkster
mailto:m...@tobyinkster.co.uk
http://tobyinkster.co.uk





Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-12 Thread Henri Sivonen

On Jan 11, 2009, at 14:01, Toby A Inkster wrote:

RDFa *does not* rely on XML namespaces. RDFa relies on eight  
attributes: about, rel, rev, property, datatype, content, resource  
and typeof. It also relies on a CURIE prefix binding mechanism. In  
XHTML and SVG, RDFa happens to use XML namespaces as this mechanism,  
because they already existed and they were convenient.


Convenience is debatable. In any case, it is rather disingenuous to  
say that RDFa doesn't rely on XML Namespaces when all that has been  
defined so far relies of attributes whose qname contains the substring  
xmlns.


In non-XML markup languages, the route to define CURIE prefixes is  
still to be decided, though discussions tend to be leaning towards  
something like:


html prefix=dc=http://purl.org/dc/terms/ foaf=http://xmlns.com/foaf/0.1/ 

address rel=foaf:maker rev=foaf:madeThis document was made by  
a href=http://joe.example.com; typeof=foaf:Person  
rel=foaf:homepage property=foaf:nameJoe Bloggs/a./address

/html


Unless this syntax were also used for XHTML, the above would be in  
violation of the DOM Consistency Design Principle of the W3C HTML WG.


This discussion seems to be about should/can RDFa work in HTML5?  
when in fact, RDFa already can and does work in HTML5 - there are  
approaching a dozen interoperable implementations of RDFa, the  
majority of which seem to handle non-XHTML HTML.


Those implementations violate the software implementation reuse  
principle that motivates the DOM Consistency Design Principle. (The  
software reuse principle being that the same code path be used for  
both HTML and XHTML on layers higher than the parser.)


The prefix mapping mechanism of CURIEs has been designed with  
disregard towards this software reuse principle (in use in Gecko,  
WebKit and, I gather, Presto) that should have been known to anyone  
working on Web-related specs far before DOM Consistency was written  
into the Design Principles of the HTML WG.


--
Henri Sivonen
hsivo...@iki.fi
http://hsivonen.iki.fi/




Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Toby A Inkster

Calogero Alex Baldacchino wrote:


The concern is about every kind of metadata with respect to their
possible uses; but, while it's been stated that Microforamts (for
instance) don't require any purticular support by UAs (thus they're
backward compatible), RDFa would be a completely new feature, thus  
html5

specification should say what UAs are espected to do with such new
attributes.


RDFa doesn't require any special support beyond the special support  
that is required for Microformats. i.e. nothing. User agents are free  
to ignore the RDFa attributes. In that sense, RDFa already works in  
pretty much every existing browser, even going back to dinosaurs like  
Mosaic and UdiWWW.


Agents are of course free to offer more than that. Look at what they  
do with Microformats: Firefox for instance offers an API to handle  
Microformats embedded on a page; Internet Explorer offers its Web  
Slices feature.


For what concerns html serialization, in particular, I'd consider  
some code like [...] which is rendered properly



Is it though? Try adding the following CSS:

span[property=cal:summary] { font-weight: bold; }

And you'll see that CSS doesn't cope with a missing ending tag in  
that situation either.


If you miss out a non-optional end tag, then funny things will happen  
- RDFa isn't immune to that problem, but neither is the DOM model,  
CSS, microformats, or anything else that relies on knowing where  
elements end. A better comparison would be a missing /p tag, which  
is actually allowed in HTML, and HTML-aware RDFa processors can  
generally handle just fine.



considering RDFa relies on namespaces (thus,
adding RDFa attributes to HTML5 spec would require some features from
xml extensibility to be added to html serialization).



RDFa *does not* rely on XML namespaces. RDFa relies on eight  
attributes: about, rel, rev, property, datatype, content, resource  
and typeof. It also relies on a CURIE prefix binding mechanism. In  
XHTML and SVG, RDFa happens to use XML namespaces as this mechanism,  
because they already existed and they were convenient. In non-XML  
markup languages, the route to define CURIE prefixes is still to be  
decided, though discussions tend to be leaning towards something like:


html prefix=dc=http://purl.org/dc/terms/ foaf=http://xmlns.com/foaf/ 
0.1/
address rel=foaf:maker rev=foaf:madeThis document was made by  
a href=http://joe.example.com; typeof=foaf:Person  
rel=foaf:homepage property=foaf:nameJoe Bloggs/a./address

/html

This discussion seems to be about should/can RDFa work in HTML5?  
when in fact, RDFa already can and does work in HTML5 - there are  
approaching a dozen interoperable implementations of RDFa, the  
majority of which seem to handle non-XHTML HTML. Assuming that people  
see value in RDFa, and assuming that the same people see value in  
using HTML5, then these people will use RDFa in HTML5. The question  
we should be discussing is not should it work? (because it already  
does), but rather, should it validate?


--
Toby A Inkster
mailto:m...@tobyinkster.co.uk
http://tobyinkster.co.uk





Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Martin Atkins

Toby A Inkster wrote:

Calogero Alex Baldacchino wrote:


The concern is about every kind of metadata with respect to their
possible uses; but, while it's been stated that Microforamts (for
instance) don't require any purticular support by UAs (thus they're
backward compatible), RDFa would be a completely new feature, thus html5
specification should say what UAs are espected to do with such new
attributes.


RDFa doesn't require any special support beyond the special support that 
is required for Microformats. i.e. nothing. User agents are free to 
ignore the RDFa attributes. In that sense, RDFa already works in 
pretty much every existing browser, even going back to dinosaurs like 
Mosaic and UdiWWW.


Agents are of course free to offer more than that. Look at what they do 
with Microformats: Firefox for instance offers an API to handle 
Microformats embedded on a page; Internet Explorer offers its Web 
Slices feature.




If it is true that RDFa can work today with no ill-effect in downlevel 
user-agents, what's currently blocking its implementation? Concern for 
validation?


It seems to me that many HTML extensions are implemented first and 
specified later[1], so perhaps it would be in the interests of RDFa 
proponents to get some implementations out there and get RDFa adopted, 
at which point it will hopefully seem a much more useful proposition for 
inclusion in HTML5.


In the short term the RDFa community can presumably provide a 
specialized HTML5 + RDFa validator for adopters to use until RDFa is 
incorporated into the core spec and tools.


It would seem that it's much easier to get into the spec when your 
feature is proven to be useful by real-world adoption.




[1] canvas, keygen, frames and script are examples of this phenomenon.



Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Calogero Alex Baldacchino

Toby A Inkster ha scritto:

Calogero Alex Baldacchino wrote:


The concern is about every kind of metadata with respect to their
possible uses; but, while it's been stated that Microforamts (for
instance) don't require any purticular support by UAs (thus they're
backward compatible), RDFa would be a completely new feature, thus html5
specification should say what UAs are espected to do with such new
attributes.


RDFa doesn't require any special support beyond the special support 
that is required for Microformats. i.e. nothing. User agents are free 
to ignore the RDFa attributes. In that sense, RDFa already works in 
pretty much every existing browser, even going back to dinosaurs like 
Mosaic and UdiWWW.


Agents are of course free to offer more than that. Look at what they 
do with Microformats: Firefox for instance offers an API to handle 
Microformats embedded on a page; Internet Explorer offers its Web 
Slices feature.




Well, at the beginning of this thread the possible need to interchange 
RDF metadata and merge triples from different vocabularies was suggested 
as a use case for RDFa serialization of RDF, and this would hint a 
requirement for supporting an  RDFa processor in every conforming UA. 
This also opens a question about what else might be needed beside 
collecting triples (is an API to build custom query applications enough, 
or should some query feature be provided by browsers? are there possible 
problems involved (like possible spam through fake metadata in cached 
ads)? possible solutions to prevent or moderate it?).


If, otherwise, nothing special must be done by browsers with RDFa 
attributes, and instead their main use is for script or plugin or 
server-side computations, or for free support by UA, these ones would 
be no way different from any other kind of custom attributes (thus 
should a validation requirement be let's accept every attribute?), 
herein included data-*, but for the /intended use/, which may make the 
difference but is something only a human can understand, and no 
validator can check (from this point of view, validating RDFa 
attributes, whatever else attribute, or just html5 attributes and custom 
data-* ones would be the same, as validating would not be a concern as 
it isn't for proprietary CSS extensions).


For what concerns html serialization, in particular, I'd consider 
some code like [...] which is rendered properly



Is it though? Try adding the following CSS:

span[property=cal:summary] { font-weight: bold; }

And you'll see that CSS doesn't cope with a missing ending tag in that 
situation either.


If you miss out a non-optional end tag, then funny things will happen 
- RDFa isn't immune to that problem, but neither is the DOM model, 
CSS, microformats, or anything else that relies on knowing where 
elements end. A better comparison would be a missing /p tag, which 
is actually allowed in HTML, and HTML-aware RDFa processors can 
generally handle just fine.


That's definetely *not* the same issue. As I've replied in a previous 
mail, people *do not* need proper styling to understend prose, they just 
need to understand the prose language, then their /brains/ will cope 
with the rest, thus the above example results in some acceptable 
graceful degradation (it may or may not be the wanted presentation, 
depending on where the closing /span was to be positioned (it wouldn't 
be the right presentation in this case), but it is not too harmful 
anyway). Bots based on metadata, instead *do need* reliable metadata to 
work properly, unless they're made smart enough to debug the code 
they're fed (should Artificial Intelligence be a requirement? - no 
sarcasm here).


If broken/wrong presentation caused by a missing end tag had ever been 
an issue, html-serialization would have been deprecated in favour of 
xml-one (if something really problematic happened, authors would 
notice it on their very first test by opening a page in a browser, 
whereas an extensive and complete debug for triples might be an odd 
problem in a large document). In contrast with that, any break in 
metadata semantics caused by html-serialization can only be a sever 
issue for a metadata-based bot (because it needs accurate metadata, 
while a non-very-accurate presentation is not a great concern for human 
beings in most cases, and if no particular presentation is attached to 
those spans, but instead they're used just to add semantics through 
metadata, as it happens to embedd RDF through RDFa attributes, a 
side-effect may arise), thus html-serialization may be more prone to 
side-effects than xml-serialization (which stops on validation errors, 
being in turn a possible cause for side-effects with metadata), from 
this point of view -- that is, since RDFa semantics is more reliable in 
a more well-formed document, xml-serialization might help to debug some 
errors, while it is not a strict requirement for content presentation, 
and instead finding more or less emboldened 

Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Ian Hickson
On Sun, 11 Jan 2009, Toby A Inkster wrote:
 
 RDFa doesn't require any special support beyond the special support that 
 is required for Microformats. i.e. nothing. User agents are free to 
 ignore the RDFa attributes. In that sense, RDFa already works in 
 pretty much every existing browser, even going back to dinosaurs like 
 Mosaic and UdiWWW.

Is this true? One of the problems I thought we were trying to solve was 
that browsers were dumb, and the idea was that we wanted to enable 
browsers to take free-form questions from the user and answer them. It 
seems to me that if the browser doesn't have any special support, then 
this use case is not met.


 The question we should be discussing is not should it work? (because 
 it already does), but rather, should it validate?

No, the question is what problem are we solving?. Talking about RDFa, 
RDF, eRDF, Microformats, and so forth doesn't answer this question.

The question should it validate is the question do we want to solve the 
problem and is this the right solution, which is a question we can't 
answer without actually knowing what the problem is.

So far, all I really know is that the problem is apparently obvious.

-- 
Ian Hickson   U+1047E)\._.,--,'``.fL
http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Martin Atkins

Ian Hickson wrote:


The question we should be discussing is not should it work? (because 
it already does), but rather, should it validate?


No, the question is what problem are we solving?. Talking about RDFa, 
RDF, eRDF, Microformats, and so forth doesn't answer this question.


The question should it validate is the question do we want to solve the 
problem and is this the right solution, which is a question we can't 
answer without actually knowing what the problem is.


So far, all I really know is that the problem is apparently obvious.



My understanding of the use-case, based on discussions so far, is:

- Allow authors to embed annotations in HTML documents such that RDF 
triples can be unambiguously extracted from human-readable data without 
duplicating the data, and thus ensuring that the machine-readable data 
and the human-readable data remain in sync.


The disconnect you're facing is that the proposers of RDFa consider the 
ability to encode RDF triples to be a goal, while you consider RDF 
triples to be a solution to a (as-yet-undetermined) higher-level 
problem. They take RDF as a given, while you do not. They have already 
solved some problems with RDF and wish only to adapt this generalized 
solution to work in HTML, while you wish to re-solve all of these 
problems from the ground up.


Would you agree with this analysis?

If this is accurate, then it's difficult to see how continued discussion 
on this topic can be productive.




Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Ian Hickson
On Sun, 11 Jan 2009, Martin Atkins wrote:
 
 The disconnect you're facing is that the proposers of RDFa consider the 
 ability to encode RDF triples to be a goal, while you consider RDF 
 triples to be a solution to a (as-yet-undetermined) higher-level 
 problem. They take RDF as a given, while you do not.

Agreed.


 They have already solved some problems with RDF and wish only to adapt 
 this generalized solution to work in HTML, while you wish to re-solve 
 all of these problems from the ground up.

I don't necessarily wish to resolve the problems -- if they have existing 
good solutions, I'm all in favour of reusing them. I just want to know 
what those problems are that we're solving, so that we can make sure that 
the solutions we're adopting are in fact solving the problems we want to 
solve. It would be irresponsible to add features without knowing why.


 If this is accurate, then it's difficult to see how continued discussion 
 on this topic can be productive.

Well presumably if the RDF and RDFa communities have already solved some 
problems, it will be possible for them to tell us what those problems are.

That's all I'm asking for.

-- 
Ian Hickson   U+1047E)\._.,--,'``.fL
http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Martin Atkins

Ian Hickson wrote:


They have already solved some problems with RDF and wish only to adapt 
this generalized solution to work in HTML, while you wish to re-solve 
all of these problems from the ground up.


I don't necessarily wish to resolve the problems -- if they have existing 
good solutions, I'm all in favour of reusing them. I just want to know 
what those problems are that we're solving, so that we can make sure that 
the solutions we're adopting are in fact solving the problems we want to 
solve. It would be irresponsible to add features without knowing why.




I would assume that our resident proponents are already satisfied that 
their higher-level problem have been solved, and this is why they're 
frustrated that you won't just let them map their existing solutions 
into HTML all in one fell swoop.


I'm not sure I'd put myself into the RDF proponent bucket, but I do 
know one use-case of RDF that I've encountered frequently so I'll post 
it as a starting point.


The FOAF schema for RDF[0] addresses the problem of making personal 
profile data machine-readable along with some of the relationships 
between people. From the outside looking in, it seems that the goal they 
set themselves was to make machine-readable the sort of information you 
find on a social networking site.


One problem this can solve is that an agent can, given a URL that 
represents a person, extract some basic profile information such as the 
person's name along with references to other people that person knows. 
This can further be applied to allow a user who provides his own URL 
(for example, by signing in via OpenID) to bootstrap his account from 
existing published data rather than having to re-enter it.


Google Social Graph API[1] apparently makes use of FOAF (when serialized 
as XML) as one of the sources of data so that given a URL that 
represents a person it can return a list of URLs that represent friends 
of that person.


The Google Profiles application[2] makes use of the output of the Social 
Graph API to suggest URLs that a user might want to list on his profile 
page, so the user only needs to fill in a couple of URLs by hand.


So, to distill that into a list of requirements:

- Allow software agents to extract profile information for a person as 
often exposed on social networking sites from a page that represents 
that person.


  There is a number of existing solutions for this:
* FOAF in RDF serialized as XML, Turtle, RDFa, eRDF, etc
* The vCard format
* The hCard microformat
* The PortableContacts protocol[3]
* Natural Language Processing of HTML documents

- Allow software agents to determine who a person lists as their friends 
given a page that represents that person.


  Again, there are competing solutions:
* FOAF in RDF serialized as XML, Turtle, RDFa, eRDF, etc
* The XFN microformat[4]
* The PortableContacts protocol[3]
* Natural Language Processing of HTML documents

---

Assuming that the above is a convincing problem domain, now let's add in 
the following requirement:


- Allow the above to be encoded without duplicating the data in both 
machine-readable and human-readable forms.


Now our solution list is reduced to (assuming we consider both 
requirements together):

* FOAF in RDF serialized as RDFa or eRDF
* The hCard microformat + the XFN microformat
* Natural Language Processing of HTML documents

All three of the above options address the use-cases as I stated them -- 
the Social Graph API apparently uses all three if you're willing to 
consider a MySpace-specific screen-scraper as Natural Language 
Processing -- so what would be the advantages of the first solution?


 * Existing RDF-based systems can use an off-the-shelf RDFa or eRDF 
parser and get the same data model (RDF triples of FOAF predicates) that 
they were already getting from the XML and Turtle RDF serializations, 
reducing the amount of additional work that must be done to consume this 
format.


 * FOAF has an extensive vocabulary that's based on fields that have 
been observed on social networking sites, while hCard is built on vCard 
which has a more constrained scope intended for the sort of entries 
you'd expect to find in an address book.


 * FOAF has been adopted -- usually in the RDF-XML serialization -- by 
some number of social networking sites (e.g. LiveJournal) so they are 
presumably already somewhat familiar with the FOAF vocabulary and may 
therefore be able to adopt it more easily in the RDFa or eRDF 
serializations.


Though there are of course also some disadvantages:

 * Some sites are already publishing XFN and/or hCard so consuming 
software would need to continue to support these in addition to 
FOAF-in-HTML-somehow, which is more work than supporting only XFN and 
hCard. (In other words, XFN/hCard already work today)


 * RDFa requires extensions to the HTML language, while XFN, hCard and 
NLP do 

Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-11 Thread Ian Hickson
On Sun, 11 Jan 2009, Martin Atkins wrote:
 
 One problem this can solve is that an agent can, given a URL that 
 represents a person, extract some basic profile information such as the 
 person's name along with references to other people that person knows. 
 This can further be applied to allow a user who provides his own URL 
 (for example, by signing in via OpenID) to bootstrap his account from 
 existing published data rather than having to re-enter it.
 
 So, to distill that into a list of requirements:
 
 - Allow software agents to extract profile information for a person as often
 exposed on social networking sites from a page that represents that person.
 
 - Allow software agents to determine who a person lists as their friends 
 given a page that represents that person.

 - Allow the above to be encoded without duplicating the data in both 
 machine-readable and human-readable forms.
 
 Is this the sort of thing you're looking for, Ian?

Yes, the above is perfect. (I cut out the bits that weren't really the 
problem from the quote above -- the above is what I'm looking for.)

The most critical part is allow a user who provides his own URL to 
bootstrap his account from existing published data rather than having to 
re-enter it. The one thing I would add would be a scenario that one would 
like to be able to play out, so that we can see if our solution would 
enable that scenario.

For example:

   I have an account on social networking site A. I go to a new social 
   networking site B. I want to be able to automatically add all my 
   friends from site A to site B.

There are presumably other requirements, e.g. site B must not ask the 
user for the user's credentials for site A (since that would train people 
to be susceptible to phishing attacks). Also, site A must not publish the 
data in a manner that allows unrelated users to obtain privacy-sensitive 
data about the user, for example we don't want to let other users 
determine relationships that the user has intentionally kept secret [1].

It's important that we have these scenarios so that we can check if the 
solutions we consider are actually able to solve these problems, these 
scenarios, within the constraints and requirements we have.

[1] http://w2spconf.com/2008/papers/s3p2.pdf

-- 
Ian Hickson   U+1047E)\._.,--,'``.fL
http://ln.hixie.ch/   U+263A/,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'


Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor)

2009-01-10 Thread Calogero Alex Baldacchino

Manu Sporny ha scritto:

Calogero Alex Baldacchino wrote:
  

That is, choosing a proper level of integration for RDF(a) support into
a web browser might divide success from failure. I don't know what's the
best possible level, but I guess the deepest may be the worst, thus
starting from an external support through out plugins, or scripts to be
embedded in a webbapp, and working on top of other feature might work
fine and lead to a better, native support by all vendors, yet limited to
an API for custom applications



There seems to be a bit of confusion over what RDFa can and can't do as
well as the current state of the art. We have created an RDFa Firefox
plugin called Fuzzbot (for Windows, Linux and Mac OS X) that is a very
rough demonstration of how an browser-based RDFa processor might
operate. If you're new to RDFa, you can use it to edit and debug RDFa
pages in order to get a better sense of how RDFa works.

  


The concern is about every kind of metadata with respect to their 
possible uses; but, while it's been stated that Microforamts (for 
instance) don't require any purticular support by UAs (thus they're 
backward compatible), RDFa would be a completely new feature, thus html5 
specification should say what UAs are espected to do with such new 
attributes.


Shall UAs just accept them and expose an API to extract triples, so 
that a web application can build a query mechanism upon such an API? 
This might work fine, and fulfill small-scale scenarios, such as 
organization-wise data modelling and interchanging, as suggested by 
Charls McCathieNevile; this can also be accomplished by an external plugin.


Shall UAs (browsers) also provide an interface to view bare triples (as 
does Fuzzbot), as a kind of debugging tool? As above.


Shall UAs (browsers) also provide metadata-based features, such as a 
query interface to look for content in a local history? This is a wider 
scale application, and also a use case where problems may arise. From 
this angle, metadata can't be assumed as reliable apriori (instead, 
their reliability is uncertain), nor can users be deemed capable to 
understand the problem and filter out wrong/misused/abused metadata (in 
general). This is the scenario were spammy metadata may become an issue. 
For instance, some code like,


div  typeof=foaf:Person
   p property=foaf:name content=Manu SpornyWe sell
   a href=http://www.cheatingcarseller.com; 
rel=foaf:homepagecars/a

   /p
/div

would produce the following triples,

_:bnode0 rdf:type http://xmlns.com/foaf/0.1/Person
_:bnode0 foaf:homepage http://www.cheatingcarseller.com
_:bnode0 foaf:name Manu Sporny

(this is exactly what Fuzzbot outputs)

thus, a metadata-based search feature might output a link to a 
metadata-spammy site when queried for Manu Sporny. That is, cheating 
a metadata-based bot by the mean of fake metadata can be very easy.


Metadata-based features, but this is true for most of xml-related 
technologies (such as RDF/RDFa), work fine if properly used. Unluckily, 
things must be used properly to work fine is not the basic principle 
of the web (and this is specially true for html and related 
technologies), which instead has always been about people will mess 
everything up, but UAs will work fine as well, that is robustness 
before all, as far as possible. For what concerns html serialization, 
in particular, I'd consider some code like,


p typeof=cal:Vevent
 I'm holding
 span property=cal:summary
   one last summer Barbecue
 !-- /span --, to meet friends and have a party before the end of 
holidays

 on
 span property=cal:dtstart content=2007-09-16T16:00:00-05:00
   datatype=xsd:dateTime
   September 16th at 4pm
 /span.
/p

(taken from http://www.w3.org/TR/2008/REC-rdfa-syntax-20081014/ and 
purposedly modified)


which is rendered properly, but produces,

_:bnode1 rdf:type http://www.w3.org/2002/12/cal/icaltzd#Vevent
_:bnode1 cal:dtstart 2007-09-16T16:00:00-05:00
_:bnode1 cal:summary one last summer Barbecue , to meet friends 
and have a party before the end of holidays on span 
xmlns:cal=http://www.w3.org/2002/12/cal/icaltzd#; 
xmlns:foaf=http://xmlns.com/foaf/0.1/; 
xmlns:xsd=http://www.w3.org/2001/XMLSchema#; 
xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#; 
datatype=xsd:dateTime datatype=xsd:dateTime 
content=2007-09-16T16:00:00-05:00 property=cal:dtstartSeptember 
16th at 4pm/span


(taken from Fuzzbot keeping namespace declarations in the root element; 
without xmlns:* attributes all triples are lost)


which is not the desired result. Perhaps it might work better as an xml 
feature on a strict xml parser (aborting with an error because of a 
missing end tag), even considering RDFa relies on namespaces (thus, 
adding RDFa attributes to HTML5 spec would require some features from 
xml extensibility to be added to html serialization). But RDFa in an 
XHTML document might look like rdfa:about, rdfa:property, 
rdfa:content, and 

Re: [whatwg] Fuzzbot (Firefox RDFa semantics processor) (was: Trying to work out the problems solved by RDFa)

2009-01-09 Thread Manu Sporny
Calogero Alex Baldacchino wrote:
 That is, choosing a proper level of integration for RDF(a) support into
 a web browser might divide success from failure. I don't know what's the
 best possible level, but I guess the deepest may be the worst, thus
 starting from an external support through out plugins, or scripts to be
 embedded in a webbapp, and working on top of other feature might work
 fine and lead to a better, native support by all vendors, yet limited to
 an API for custom applications

There seems to be a bit of confusion over what RDFa can and can't do as
well as the current state of the art. We have created an RDFa Firefox
plugin called Fuzzbot (for Windows, Linux and Mac OS X) that is a very
rough demonstration of how an browser-based RDFa processor might
operate. If you're new to RDFa, you can use it to edit and debug RDFa
pages in order to get a better sense of how RDFa works.

There is a primer[1] to the semantic web and an RDFa basics[2] tutorial
on YouTube for the completely un-initiated. The rdfa.info wiki[3] has
further information.


(sent to public-r...@w3.org earlier this week):

We've just released a new version of Fuzzbot[4], this time with packages
for all major platforms, which we're going to be using at the upcoming
RDFa workshop at the Web Directions North 2009 conference[5].

Fuzzbot uses librdfa as the RDFa processing back-end and can display
triples extracted from webpages via the Firefox UI. It is currently most
useful when debugging RDFa web page triples. We use it to ensure that
the RDFa web pages that we are editing are generating the expected
triples - it is part of our suite of Firefox web development plug-ins.

There are three versions of the Firefox XPI:

Windows XP/Vista (i386)
http://rdfa.digitalbazaar.com/fuzzbot/download/fuzzbot-windows.xpi

Mac OS X (i386)
http://rdfa.digitalbazaar.com/fuzzbot/download/fuzzbot-macosx-i386.xpi

Linux (i386) - you must have xulrunner-1.9 installed
http://rdfa.digitalbazaar.com/fuzzbot/download/fuzzbot-linux.xpi

There is also very preliminary support for the Audio RDF and Video RDF
vocabularies, demos of which can be found on YouTube[6][7].

To try it out on the Audio RDF vocab, install the plugin, then click on
the Fuzzbot icon at the bottom of the Firefox window (in the status bar):

http://bitmunk.com/media/6566872

There should be a number of triples that show up in the frame at the
bottom of the screen as well as a music note icon that shows up in the
Firefox 3 AwesomeBar.

To try out the Video RDF vocab, do the same at this URL:

http://rdfa.digitalbazaar.com/fuzzbot/demo/video.html

Please report any installation or run-time issues (such as the plug-in
not working on your platform) to me, or on the librdfa bugs page:

http://rdfa.digitalbazaar.com/librdfa/trac

-- manu

[1] http://www.youtube.com/watch?v=OGg8A2zfWKg
[2] http://www.youtube.com/watch?v=ldl0m-5zLz4
[3] http://rdfa.info/wiki
[4] http://rdfa.digitalbazaar.com/fuzzbot/
[5] http://north.webdirections.org/
[6] http://www.youtube.com/watch?v=oPWNgZ4peuI
[7] http://www.youtube.com/watch?v=PVGD9HQloDI

-- 
Manu Sporny
President/CEO - Digital Bazaar, Inc.

blog: Fibers are the Future: Scaling Past 100K Concurrent Requests
http://blog.digitalbazaar.com/2008/10/21/scaling-webservices-part-2