Web resource: Difference between revisions

Content deleted Content added
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
 
(265 intermediate revisions by more than 100 users not shown)
Line 1:
{{Short description|Identifiable entity on the World Wide Web}}
The concept of '''Resource''' is primitive in the [[World Wide Web|Web]] architecture, and is used in the definition of its fundamental elements. The term was first introduced to refer to targets of [[Uniform Resource Locator |Uniform Resource Locators]] (URLs), but its definition has been further extended to include the [[referent]] of any [[Uniform Resource Identifier]] (RFC 3986), or [[Internationalized Resource Identifier]] (RFC 3987). In the [[Semantic Web]], abstract resources and their semantic properties are described using the family of languages based on [[Resource Description Framework]] (RDF).
{{Multiple issues|{{more footnotes|date=August 2018}}
{{essay|date=August 2018}}
{{original research|date=August 2018}}|collapsed=yes|section=y}}
 
A '''web resource''' is any identifiable resource (digital, physical, or abstract) present on or connected to the [[World Wide Web]].<ref name="rfc3986">[https://tools.ietf.org/html/rfc3986 RFC 3986 Uniform Resource Identifier (URI): Generic Syntax]</ref><ref name="fielding_dissertation">[https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm Roy T. Fielding's Dissertation]</ref><ref name="uri_identify">[https://www.w3.org/DesignIssues/HTTP-URI.html What do HTTP URIs Identify?], by [[Tim Berners-Lee]]</ref> Resources are identified using [[Uniform Resource Identifier]]s (URIs).<ref name="rfc3986" /><ref name="rfc1738">RFC 1738 Uniform Resource Locators (URL)</ref> In the [[Semantic Web]], web resources and their semantic properties are described using the [[Resource Description Framework]] (RDF).<ref name="rdf_index">[https://www.w3.org/standards/techs/rdf RDF Current Status]</ref>
== History ==
The concept of resource has evolved during the Web history, from the early notion of static addressable [[document]] or [[file]], to a more generic and abstract definition, now encompassing every ''thing'' or [[entity]] that can be identified, named, addressed or handled, in any way whatsoever, in the Web at large, or in any networked information system. The declarative aspects of a resource ([[identification]] and naming) and its functional aspects (addressing and technical handling) were not clearly distinct in the early specifications of the Web, and the very definition of the concept has been the subject of long and still open debate involving difficult, and often arcane, technical, social, linguistic and philosophical issues.
 
The concept of ''resource'' has evolved during the Web's history, from the early notion of static addressable [[Electronic document|document]]s or [[Computer file|file]]s, to a more generic and abstract definition, now encompassing every ''"thing''" or [[wikt:entity|entity]] that can be identified, named, addressed or handled, in any way whatsoever, in the Webweb at large, or in any networked information system. The declarative aspects of a resource ([[identification]] and naming) and its functional aspects (addressing and technical handling) were notweren't clearly distinct in the early specifications of the Webweb, and the very definition of the concept has been the subject of long and still open debate involving difficult, and often arcane, technical, social, linguistic and philosophical issues.
=== From documents and files to Web resources ===
 
=== From documents and files to Webweb resources ===
In the early specifications of the Web (1990-1994), the term "resource" is barely used at all. The Web is designed as a network of more or less static addressable objects, basically files and documents, linked together in the form of an hypertext. The objects are considered insofar as they can be addressed and handled through a specific protocol, Web documents are accessed and browsed using [[HTTP]] protocol, files are exchanged using [[File transfer protocol|file transfer protocol]], etc.
TheIn firstthe systematicearly usespecifications of the termweb resource(1990–1994), wasthe introducedterm in''resource'' Juneis 1994barely byused RFCat 1630all. In thisThe documentweb is defineddesigned theas generica notionnetwork of [[Universalmore Resourceor Identifier]]less (URI),static withaddressable itsobjects, twobasically variantsfiles [[Uniformand Resourcedocuments, Locatorlinked |Universal Resource Locator]] (URL) andusing [[URL|Uniform Resource Name |Universal Resource NameLocators]] (URNURLs). A web resource is implicitly defined as something which can be identified,. theThe identification deservingserves two distinct purposes,: naming and addressing,; the latter only being dependentdepends on a protocol. It is noticeablenotable that RFC 1630 does not attempt to define at all the notion of resource,; actually it barely uses the term besides its occurrence in Uniform Resource Identifier (URI), Uniform Resource Locator (URL), and Uniform Resource Name (URN), and still speaks about "Objects of the Network".
 
RFC 1738 (December 1994) further specifies URLs, the term '"Universal'" being changed to '"Uniform'". The document is making a more systematic use of ''resource'' to refer to objects which are '"available'", or '"can be located and accessed'" through the Internetinternet. There again, the term ''resource'' itself is not explicitly defined.
The first systematic use of the term resource was introduced in June 1994 by RFC 1630. In this document is defined the generic notion of [[Universal Resource Identifier]] (URI), with its two variants [[Uniform Resource Locator |Universal Resource Locator]] (URL) and [[Uniform Resource Name |Universal Resource Name]] (URN). A resource is implicitly defined as something which can be identified, the identification deserving two distinct purposes, naming and addressing, the latter only being dependent on a protocol. It is noticeable that RFC 1630 does not attempt to define at all the notion of resource, actually it barely uses the term besides its occurrence in URI, URL and URN, and still speaks about "Objects of the Network".
 
=== From Webweb resources to abstract resources= ==
RFC 1738 (December 1994) further specifies URLs, the term 'Universal' being changed to 'Uniform'. The document is making a more systematic use of 'resource' to refer to objects which are 'available', or 'can be located and accessed' through the Internet. There again, the term 'resource' itself is not explicitly defined.
The first explicit definition of ''resource'' is found in RFC 2396, in August 1998 :
{{blockquote|
''A resource can be anything that has identity. Familiar examples include an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), and a collection of other resources. Not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a library can also be considered resources.'' The resource is the conceptual mapping to an entity or set of entities, not necessarily the entity which corresponds to that mapping at any particular instance in time. Thus, a resource can remain constant even when its content---the entities to which it currently corresponds---changes over time, provided that the conceptual mapping is not changed in the process.}}
IfAlthough examples in this document arewere still limited to physical entities, the definition opensopened the door to more abstract resources. Providing a concept is given an identity, and this identity is expressed by a well-formed URI (Uniform Resource Identifier, a superset of URLs), then a concept can be a resource as well.
 
In January 2005, <nowiki>RFC 3986</nowiki> makes this extension of the definition completely explicit:
===From Web resources to abstract resources===
''... abstract…abstract concepts can be resources, such as the operators and operands of a mathematical equation, the types of a relationship (e.g., "parent" or "employee"), or numeric values (e.g., zero, one, and infinity).''
 
== Resources in RDF and the Semantic Web ==
The first explicit definition of resource is found in RFC 2396, in August 1998 :
First released in 1999, [[Resource Description Framework |RDF]] was first intended to ''describe'' resources, in other words to declare [[metadata]] of resources in a standard way. A RDF description of a resource is a set of triples (''subject'', ''predicate'', ''object''), where ''subject'' represents the resource to be described, ''predicate'' a type of property relevant to this resource, whereasand ''object'' can be data or another resource. The ''predicate'' itself is considered as a resource and identified by a URI. Hence, properties like "title", "author" are represented in RDF as resources, which can be used, in a recursive way, as ''the subject'' of other triples.
''A resource can be anything that has identity. Familiar examples include an electronic document, an image, a service (e.g., "today's weather report for Los Angeles"), and a collection of other resources. Not all resources are network "retrievable"; e.g., human beings, corporations, and bound books in a library can also be considered resources.''
Building on this recursive principle, RDF vocabularies, such as [[RDFSRDF Schema]] (RDFS), [[Web Ontology Language |OWL]] (OWL), and [[SKOSSimple Knowledge Organization System]] will pile up definitions of abstract resources such as classes, properties, concepts, all identified by URIs.
If examples in this document are still limited to physical entities, the definition opens the door to more abstract resources. Providing a concept is given an identity, and this identity is expressed by a well-formed URI, then a concept can be a resource as well.
In January 2005, RFC 3986 makes this extension of the definition completely explicit:
''... abstract concepts can be resources, such as the operators and operands of a mathematical equation, the types of a relationship (e.g., "parent" or "employee"), or numeric values (e.g., zero, one, and infinity).''
 
RDF also specifies the definition of anonymous resources or [[blank node]]s, which are not absolutely identified by URIs.
== Resources in RDF and the Semantic Web ==
 
=== Using HTTP URIs to identify abstract resources ===
First released in 1999, [[Resource Description Framework |RDF]] was first intended to ''describe'' resources, in other words to declare [[metadata]] of resources in a standard way. A RDF description of a resource is a set of triples (''subject'', ''predicate'', ''object''), where ''subject'' represents the resource to be described, ''predicate'' a type of property relevant to this resource, whereas ''object'' can be data or another resource. The ''predicate'' itself is considered as a resource and identified by a URI. Hence, properties like "title", "author" are represented in RDF as resources, which can be used, in a recursive way, as ''subject'' of other triples.
Using URLs[[URL]]s, andparticularly singularly[[uniform resource identifier|HTTP URIsURI]]s, are frequently used to identify abstract resources, such as classes, properties or other kind of concepts,. isExamples acan frequentbe practice, for examplefound in RDFS or OWL [[Ontology (computer science) |ontologies]]. Since such URIs are associated with the HTTP protocol, the question arose of which kind of representation, if any, should beone get for such resources through this protocol, typically using a Webweb browser, and if the syntax of the URI itself could help to differentiate "abstract" resources from "information" resources. The URI specifications such as RFC 3986 letleft to the protocol specification the task of defining actions performed on the resources and they don'tdo not provide any answer to this question. It had been suggested that httpan URIsHTTP URI identifying a resource in the original sense, such as a file, document, or any kind of so-called information resource, should be "slash" URIs, in other words, should not contain a [[fragment identifier |fragment identifiers]], whereas URIsa URI used to identify conceptsa concept or abstract resourcesresource should be a "hash" URIsURI using fragment identifiers. For example <nowiki>''http://www.sillywidgets.org/catalogue/widgets.html''</nowiki> would both identify and locate a webfragment page (maybe providing some human-readable description of the widgets sold by Silly Widgets, Inc.) whereas <nowiki>''http://www.widgets.org/ontology#Widget''</nowiki> would identify the abstract concept or class "Widget" in this company ontology, and would not necessarily retrieve any physical resource through http protocol. But it has been answered that such a distinction is impossible to enforce in practice, and famous standard vocabularies provide counter-examples widely used. For example the [[Dublin Core]] concepts such as "title", "publisher", "creator" are identified by "slash" URIs like ''http://purl.org/dc/elements/1.1/title''identifier.
Building on this recursive principle, RDF vocabularies, such as [[RDFS]], [[Web Ontology Language |OWL]], and [[SKOS]] will pile up definitions of abstract resources such as classes, properties, concepts, all identified by URIs.
 
For example: <code><nowiki>http://www.example.org/catalogue/widgets.html</nowiki></code> would both identify and locate a web page (maybe providing some human-readable description of the widgets sold by Silly Widgets, Inc.) whereas <code><nowiki>http://www.example.org/ontology#Widget</nowiki></code> would identify the abstract concept or class "Widget" in this company ontology, and would not necessarily retrieve any physical resource through [[HTTP protocol]]. But it has been answered that such a distinction is impossible to enforce in practice, and famous standard vocabularies provide counter-examples widely used. For example, the [[Dublin Core]] concepts such as "title", "publisher", "creator" are identified by "slash" URIs like <code><nowiki>http://purl.org/dc/elements/1.1/title</nowiki></code>.
=== Using HTTP URIs to identify abstract resources ===
Using URLs, and singularly HTTP URIs, to identify abstract resources, such as classes, properties or other kind of concepts, is a frequent practice, for example in RDFS or OWL [[Ontology (computer science) |ontologies]]. Since such URIs are associated with the HTTP protocol, the question arose of which kind of representation, if any, should be get for such resources through this protocol, typically using a Web browser, and if the syntax of the URI itself could help to differentiate "abstract" resources from "information" resources. The URI specifications such as RFC 3986 let to the protocol specification the task of defining actions performed on the resources and they don't provide any answer to this question. It had been suggested that http URIs identifying a resource in the original sense, file, document or any kind of so-called information resource, should be "slash" URIs, in other words should not contain [[fragment identifier |fragment identifiers]], whereas URIs used to identify concepts or abstract resources should be "hash" URIs using fragment identifiers. For example <nowiki>''http://www.sillywidgets.org/catalogue/widgets.html''</nowiki> would both identify and locate a web page (maybe providing some human-readable description of the widgets sold by Silly Widgets, Inc.) whereas <nowiki>''http://www.widgets.org/ontology#Widget''</nowiki> would identify the abstract concept or class "Widget" in this company ontology, and would not necessarily retrieve any physical resource through http protocol. But it has been answered that such a distinction is impossible to enforce in practice, and famous standard vocabularies provide counter-examples widely used. For example the [[Dublin Core]] concepts such as "title", "publisher", "creator" are identified by "slash" URIs like ''http://purl.org/dc/elements/1.1/title''.
 
The general question of which kind of resources httpHTTP URI should or should not identify has been formallyformerly known in W3C as the [http://www.w3.org/2001/tag/issues.html#httpRange-14 httpRange-14] issue, following its name on the list defined by the [[Technical Architecture Group]] (TAG). The TAG has delivered in 2005 a final answer to this issue, making the distinction between an "information resource" and a "non-information" resource dependent on the type of answer given by the server to a "GET" request. This solution puts and end to the "hash" vs "slash" debate, and seems to have met a consensus in the Semantic Web community, although some of its prominent members such as [[Patrick J. Hayes | Pat Hayes]] have expressed concerns both on its technical feasibility and conceptual foundation. According to Patrick Hayes' view point, the very distinction between "information resource" and "other resource" is impossible to found, and should better not be specified at all, and [[ambiguity]] of the [[referent]] resource is inherent to URIs like to any naming mechanism.:
 
* [[HTTP 200#2xx success|2xx Success]] indicates resource is an information resource.
=== Resource ownership, intellectual property and trust ===
* [[HTTP 303|303 See Other]] indicates the resource could be informational or abstract; the redirection target could tell you.
* [[List of HTTP status codes#4xx client errors|4xx Client Error]] provides no information at all.
 
This allows vocabularies (like [[Dublin Core]], [[FOAF]], and [[Wordnet]]) to continue to use slash instead of hash for pragmatic reasons. While this compromise seems to have met a consensus in the Semantic Web community, some of its prominent members such as [[Patrick J. Hayes|Pat Hayes]] have expressed concerns both on its technical feasibility and conceptual foundation. According to Patrick Hayes' viewpoint, the very distinction between "information resource" and "other resource" is impossible to find and should better not be specified at all, and [[ambiguity]] of the referent resource is inherent to URIs like to any naming mechanism.
In RDF, "anybody can declare anything about anything". Resources are "defined" by formal descriptions which anyone can publish, copy, modify and publish over the Web. If the content of a Web resource in the classical sense (a Web page or on-line file) is clearly owned by its publisher, who can claim intellectual property on it, an abstract resource can be defined by an accumulation of RDF descriptions, not necessarily controlled by a unique publisher, and not necessarily consistent with each other. It's an open issue to know if a resource should have an authoritative definition with clear and trustable ownership, and in this case, how to make this description technically distinct from other descriptions. A parallel issue is how intellectual property applies to such descriptions.
 
=== Resource ownership, intellectual property and trust ===
In RDF, "anybody can declare anything about anything". Resources are "defined" by formal descriptions which anyone can publish, copy, modify and publish over the Webweb. If the content of a Webweb resource in the classical sense (a Webweb page or on-line file) is clearly owned by its publisher, who can claim intellectual property on it, an abstract resource can be defined by an accumulation of RDF descriptions, not necessarily controlled by a unique publisher, and not necessarily consistent with each other. It's an open issue to know if a resource should have an authoritative definition with clear and trustable ownership, and in this case, how to make this description technically distinct from other descriptions. A parallel issue is how intellectual property appliesmay apply to such descriptions.
 
==See also==
*[[Address bar]]
*[[Resource (computer science)]]
*[[Resource-oriented architecture]] (ROA)
*[[Resource-oriented computing]] (ROC)
*[[Representational state transfer]] (REST)
*[[Web service]] and [[Service-oriented architecture]] (SOA)
*[[Web-oriented architecture]] (WOA)
 
== References ==
=== Citations ===
* [http://www.w3.org/DesignIssues/HTTP-URI.html What do HTTP URIs Identify?], by [[Tim Berners-Lee]]
{{Reflist}}
*Presentations at [http://www.ibiblio.org/hhalpin/irw2006/ IRW 2006 conference]
 
** [http://www.w3.org/2006/04/irw65/urisym.html A Pragmatic Theory of Reference for the Web], by [[Dan Connolly]].
=== Sources ===
** [http://www.ibiblio.org/hhalpin/irw2006/presentations/HayesSlides.pdf In Defense of Ambiguity], by [[Patrick Hayes]].
{{refbegin}}
*[http://www.w3.org/1999/05/WCA-terms/ Web Characterization Terminology & Definitions Sheet], editors: Brian Lavoie and Henrik Frystyk Nielsen, May 1999.
* [http://www.w3.org/DesignIssues/HTTP-URITermResource.html WhatA doShort HTTPHistory URIsof Identify?"Resource" in web architecture.], by [[Tim Berners-Lee]]
*Presentations at [http://www.ibiblio.org/hhalpin/irw2006/ IRW 2006 conference], [http://webtechmag.com/ Web resources]
** [http://www.w3.org/2006/04/irw65/urisym.html A Pragmatic Theory of Reference for the Web], by [[Dan Connolly (computer scientist)|Dan Connolly]].
** [http://www.ibiblio.org/hhalpin/irw2006/presentations/HayesSlides.pdf In Defense of Ambiguity], by [[Patrick J. Hayes|Patrick Hayes]].
*[http://sunsite.informatik.rwth-aachen.de/Publications/CEUR-WS//Vol-201/43.pdf Towards an OWL ontology for identity on the web], by Valentina Presutti and Aldo Gangemi, [http://swapconf.it/2006/ SWAP2006 conference] {{Webarchive|url=https://web.archive.org/web/20061224214413/http://www.swapconf.it/2006/ |date=2006-12-24 }}.
{{refend}}
 
{{Web interfaces}}
 
[[Category:Resources]]
[[Category:World Wide Web]]
[[frCategory:RessourceSemantic (Web)]]