HTTPd is a software program that usually runs in the background, as a process , and plays the role of a server in a client–server model using the HTTP and/or HTTPS network protocol (s).
30-451: The process waits for the incoming client requests and for each request it answers by replying with requested information, including the sending of the requested web resource , or with an HTTP error message . HTTPd stands for Hypertext Transfer Protocol daemon . It usually is the main software part of an HTTP server better known as a web server . Some commonly used implementations are: Web resource A web resource
60-678: A triplestore , then one can extract some knowledge from them using a query language, like SPARQL . The first version was published by the World-Wide Web Consortium (W3C) in April 1998, and the final W3C recommendation was released in February 2014. Many RDFS components are included in the more expressive Web Ontology Language (OWL). RDFS constructs are the RDFS classes, associated properties and utility properties built on
90-495: 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. Building on this recursive principle, RDF vocabularies, such as RDF Schema (RDFS), Web Ontology Language (OWL), and Simple Knowledge Organization System will pile up definitions of abstract resources such as classes, properties, concepts, all identified by URIs. RDF also specifies
120-422: A file, document, or any kind of so-called information resource, should be "slash" URIs — in other words, should not contain a fragment identifier , whereas a URI used to identify a concept or abstract resource should be a "hash" URI using a fragment identifier. For example: http://www.example.org/catalogue/widgets.html would both identify and locate a web page (maybe providing some human-readable description of
150-403: A logical inconsistency (which could in layman terms be interpreted as a "validation error"), meaning that the statements the triples make are in conflict and try to express contradictory states of affairs. An example of this in RDFS would be having conflicting datatypes for objects (e.g. declaring a resource to be of type xsd:integer and being also declared to be xsd:boolean when inferencing
180-404: 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) weren't clearly distinct in the early specifications of
210-400: A property domain and range (see definitions in the next section) from a class to its subclasses. An entailment regime defines whether the triples in a graph are logically contradictory or not. RDFS entailment is not very restrictive, i.e. it does not contain a large amount of rules (compared, for example, to OWL ) limiting what kind of statements are valid in the graph. On the other hand it
240-402: 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. Although examples in this document were still limited to physical entities, the definition opened the door to more abstract resources. Providing a concept is given an identity, and this identity is expressed by
270-414: 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,
300-455: 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 left to the protocol specification the task of defining actions performed on the resources and they do not provide any answer to this question. It had been suggested that an HTTP URI identifying a resource in the original sense, such as
330-545: 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
SECTION 10
#1732764968637360-441: A well-formed URI (Uniform Resource Identifier, a superset of URLs), 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).' First released in 1999, RDF
390-398: Is a bar:Animal . When we do RDFS-based inferencing, we will get the following extra triple: The rdfs:domain statement dictates that any subject in triples where bar:livesInZoo is the predicate is of type bar:Animal . What RDFS entailment is not able to tell us is the relationship between bar:Animal and bar:Elephant . Due to inferencing we now know that foo:SomeElephant
420-402: Is also not very expressive, meaning that the semantics that can be represented in a machine-interpretable way with the graph is quite limited. Below in a simple example of the capabilities and limits of RDFS entailment, we start with a graph containing the following explicit triples: Without enabling inferencing with RDFS entailment, the data we have does not tell us whether foo:SomeElephant
450-714: Is any identifiable resource (digital, physical, or abstract) present on or connected to the World Wide Web . Resources are identified using Uniform Resource Identifiers (URIs). In the Semantic Web , web resources and their semantic properties are described using the Resource Description Framework (RDF). The concept of a web resource has evolved during the Web's history, from the early notion of static addressable documents or files , to
480-413: Is both bar:Animal and bar:Elephant so these classes do intersect but there is no information to deduce whether they merely intersect, are equal or have a subclass relationship. In RDFS 1.1, the domain and range statements do not carry any formal meaning and their interpretation is left up to the implementer. On the other hand in the 1.2 Working draft they are used as entailment rules for inferencing
510-532: Is how intellectual property may apply to such descriptions. RDF Schema RDF Schema ( Resource Description Framework Schema , variously abbreviated as RDFS , RDF(S) , RDF-S , or RDF/S ) is a set of classes with certain properties using the RDF extensible knowledge representation data model, providing basic elements for the description of ontologies . It uses various forms of RDF vocabularies, intended to structure RDF resources . RDF and RDFS can be saved in
540-531: Is implicitly defined as something which can be identified. The identification serves two distinct purposes: naming and addressing; the latter only depends on a protocol. It is notable 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
570-403: Is the class of classes, and so it is an instance of itself. The other classes described by the RDF and RDFS specifications are: Properties are instances of the class rdf:Property and describe a relation between subject resources and object resources. When used as such a property is a predicate (see also RDF: reification ). For example, the following declarations are used to express that
600-519: 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 HTTP URI should or should not identify has been formerly known in W3C as the httpRange-14 issue, following its name on the list defined by the (TAG). The TAG delivered in 2005 a final answer to this issue, making
630-470: The vocabulary of RDF . A typical example of an rdfs:Class is foaf:Person in the Friend of a Friend ( FOAF ) vocabulary. An instance of foaf:Person is a resource that is linked to the class foaf:Person using the rdf:type property , such as in the following formal expression of the natural-language sentence: 'John is a Person'. The definition of rdfs:Class is recursive: rdfs:Class
SECTION 20
#1732764968637660-687: 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 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: A resource can be anything that has identity. Familiar examples include an electronic document, an image,
690-533: The definition of anonymous resources or blank nodes , which are not absolutely identified by URIs. URLs , particularly HTTP URIs , are frequently used to identify abstract resources, such as classes, properties or other kind of concepts. Examples can be found in RDFS or OWL ontologies . Since such URIs are associated with the HTTP protocol, the question arose of which kind of representation, if any, should one get for such resources through this protocol, typically using
720-659: 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 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 Pat Hayes have expressed concerns both on its technical feasibility and conceptual foundation. According to Patrick Hayes' viewpoint,
750-431: The property ex:employer relates a subject, which is of type foaf:Person , to an object, which is of type foaf:Organization : Given the previous two declarations, from the triple: can be inferred (resp. follows) that ex:John is a foaf:Person , and ex:CompanyX is a foaf:Organization . For example, the following declares that 'Every Person is an Agent': Hierarchies of classes support inheritance of
780-401: The types of individuals. Nevertheless in both versions, it is very clearly stated that the expected functionality of range is "the values of a property are instances of one or more classes" and domain "any resource that has a given property is an instance of one or more classes". The example above demonstrated some of the limits and capabilities of RDFS entailment, but did not show an example of
810-413: 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
840-462: 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. 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 using Uniform Resource Locators (URLs). A web resource
870-424: The widgets sold by Silly Widgets, Inc.) whereas http://www.example.org/ontology#Widget 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,
900-420: 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, and object can be data or another resource. The predicate itself is considered as a resource and identified by
#636363