// Pour installer RDF.Net
#r "nuget: dotNetRDF"- dotNetRDF, 3.5.1
Navigation : Index
DEPRECIE : Ce notebook monolithique a ete remplace par la serie SemanticWeb (13 notebooks, ~10h).
La nouvelle serie couvre l’ensemble du spectre du Web sémantique : - Partie 1 (SW-1 a SW-4) : Fondations RDF avec dotNetRDF (.NET C#) - Partie 2 (SW-5 a SW-7) : Données Liees, RDFS, OWL (.NET C#) - Partie 3 (SW-8 a SW-11) : rdflib, SHACL, JSON-LD, RDF 1.2 (Python) - Partie 4 (SW-12 a SW-13) : Graphes de Connaissances, GraphRAG (Python)
Ce notebook est conserve a titre de reference. Pour un apprentissage structure, utilisez la nouvelle serie.
Le Resource Description Framework, plus connu sous son acronyme RDF, est un standard du World Wide Web Consortium (W3C) qui offre une méthode universelle pour décrire ou modéliser l’information qui est implémentée sur le Web, ou ailleurs.
RDF repose sur la notion de “triple” pour représenter les données. Un triple est une déclaration composée de trois parties : un sujet, un prédicat et un objet. Par exemple, dans la déclaration “Paris est la capitale de la France”, “Paris” est le sujet, “est la capitale de” est le prédicat, et “France” est l’objet.
En utilisant cette structure simple, RDF peut modéliser des informations complexes de manière structurée et interconnectée. Le sujet d’un triple peut être n’importe quelle ressource (par exemple, une personne, un lieu, un événement), le prédicat est une relation ou une propriété de la ressource, et l’objet est soit une autre ressource, soit une valeur (par exemple, une chaîne de caractères, un nombre).
En outre, RDF est le fondement du web sémantique, une vision du web où les informations sont non seulement disponibles pour les humains à lire, mais aussi pour les machines à comprendre et à traiter.
RDF.Net est une bibliothèque C# pour travailler avec le format de données RDF (Resource Description Framework), qui est un standard du World Wide Web Consortium (W3C) pour le web sémantique. Il permet aux développeurs de manipuler les données RDF, de créer et d’interroger des graphes RDF, et de serialiser ces graphes dans différents formats de syntaxe RDF.
La bibliothèque RDF.Net est basée sur plusieurs concepts clés qui définissent son fonctionnement et sa structure. Les classes principales se trouvent dans l’espace de noms VDS.RDF et sont basées sur des interfaces ou des classes abstraites pour garantir une extensibilité maximale. Parmi ces interfaces, nous retrouvons :
INode : représentant un nœud dans un graphe RDF, qui représente la valeur d’un terme RDF.IGraph : l’interface pour les graphes. Un document RDF forme un graphe au sens mathématique. Nous représentons donc des ensembles de Triples comme des graphes.ITripleStore : Un Triple Store est une collection de un ou plusieurs graphes.Un document RDF peut être considéré comme formant un graphe mathématique. Nous représentons donc des ensembles de triples RDF comme des graphes. Tous les graphes de la bibliothèque sont des implémentations de l’interface IGraph et dérivent généralement de la classe abstraite BaseGraph. Une implémentation IGraph est une représentation en mémoire d’un document RDF.
Un INode représente un nœud dans un graphe RDF, ce qui est parfois appelé un terme RDF. Il existe plusieurs types de nœuds, chacun représenté par une interface spécialisée, comme IBlankNode pour un nœud anonyme, ILiteralNode pour un nœud avec une valeur textuelle, ou encore IUriNode pour un nœud URI.
Un Triple est l’unité de base des données RDF, les nœuds à eux seuls n’ont pas de signification, mais utilisés dans un Triple, ils forment une déclaration qui exprime une connaissance. Un Triple est formé d’un Sujet, d’un Prédicat et d’un Objet. Il est interprété comme déclarant qu’un certain Sujet est lié à un certain Objet par une relation spécifiée par le Prédicat.
Un Triple Store représente une collection de Graphes et est utilisé pour travailler avec de grandes quantités de RDF. Les Triple Stores sont conçus pour être moins tangibles que les Graphes en termes d’interface et d’implémentations.
DBpedia est un projet qui extrait des données structurées à partir de Wikipedia et les rend disponibles sur le Web sous forme de données RDF. DBpedia permet aux utilisateurs de requêter les données de Wikipedia comme une base de données sémantique, fournissant une source précieuse de connaissances pour les applications du Web sémantique.
Trinity RDF est un wrapper pour RDF.Net qui utilise Entity Framework, une technologie de Microsoft pour accéder à des bases de données relationnelles en utilisant des modèles d’objet .NET. Trinity RDF offre une abstraction de haut niveau pour manipuler les données RDF, rendant l’utilisation de RDF plus facile et plus intuitive pour les développeurs .NET.
Jena Fuseki est un serveur de triplestore open-source qui permet de stocker et de requêter des données RDF. Il prend en charge le langage de requête SPARQL et offre une interface utilisateur Web pour gérer les données RDF.
Construisons une application simple en utilisant RDF.Net.
Dans cette première demonstration, nous allons : - Installer la bibliotheque dotNetRDF - Créer notre premier graphe RDF en memoire - Définir des triplets (sujet-predicat-objet) - Serialiser le graphe dans différents formats (NTriples, RDF/XML)
Note technique : dotNetRDF utilise l’interface
IGraphpour representer un graphe RDF, qui est essentiellement une collection de triplets.
La première chose que nous voulons faire est de créer un graphe comme ceci :
A ce stade, nous avons créé un graphe vide. Un graphe RDF est une structure de données qui contiendra des triplets.
| Propriete | Valeur actuelle |
|---|---|
| Nombre de triplets | 0 |
| URI de base | null (par defaut) |
| Espaces de noms | Predefinis (rdf, rdfs, xsd) |
Le graphe est pret a recevoir des triplets que nous allons ajouter dans la cellule suivante.
Nous utilisons ici la classe Graph qui est l’implémentation la plus couramment utilisée de l’interface IGraph.
Ensuite, nous voulons créer des nœuds et affirmer des triplets dans le graphe, comme ceci :
using VDS.RDF;
using System;
IGraph g = new Graph();
IUriNode dotNetRDF = g.CreateUriNode(UriFactory.Create("http://www.dotnetrdf.org"));
IUriNode says = g.CreateUriNode(UriFactory.Create("http://example.org/says"));
ILiteralNode helloWorld = g.CreateLiteralNode("Hello World");
ILiteralNode bonjourMonde = g.CreateLiteralNode("Bonjour tout le Monde", "fr");
g.Assert(new Triple(dotNetRDF, says, helloWorld));
g.Assert(new Triple(dotNetRDF, says, bonjourMonde));
Console.WriteLine($"Noeuds créés : dotNetRDF={dotNetRDF}, says={says}");
Console.WriteLine($"Littéraux : helloWorld={helloWorld}, bonjourMonde={bonjourMonde}");
Console.WriteLine($"Triplets ajoutés au graphe : {g.Triples.Count}");Noeuds créés : dotNetRDF=http://www.dotnetrdf.org/, says=http://example.org/says
Littéraux : helloWorld=Hello World^^http://www.w3.org/2001/XMLSchema#string, bonjourMonde=Bonjour tout le Monde@fr
Triplets ajoutés au graphe : 2
Le code précédent illustre les trois types de noeuds RDF :
| Type de noeud | Classe | Exemple | Usage |
|---|---|---|---|
| URI Node | IUriNode |
http://www.dotnetrdf.org |
Identifiant de ressource (sujet/predicat) |
| Literal Node | ILiteralNode |
"Hello World" |
Valeur textuelle ou numérique (objet) |
| Literal avec langue | ILiteralNode |
"Bonjour"@fr |
Valeur avec indication de langue |
Structure des triplets crees :
<http://www.dotnetrdf.org> <http://example.org/says> "Hello World"
<http://www.dotnetrdf.org> <http://example.org/says> "Bonjour tout le Monde"@fr
Point cle : La méthode
g.Assert()ajoute un triplet au graphe. Chaque triplet exprime une relation : “dotNetRDF dit Hello World”.
Comme indiqué dans la Présentation de la bibliothèque, nous utilisons la méthode UriFactory.Create() pour créer des URIs, car cela internera les URIs pour nous, ce qui réduit à la fois l’utilisation de la mémoire et accélère les comparaisons d’égalité.
Une fois que nous avons fait cela, nous pouvons afficher les triplets dans la console :
http://www.dotnetrdf.org/ , http://example.org/says , Hello World^^http://www.w3.org/2001/XMLSchema#string
http://www.dotnetrdf.org/ , http://example.org/says , Bonjour tout le Monde@fr
La sortie affichée utilise une representation simplifiee des triplets, utile pour le debogage mais pas une syntaxe RDF standard.
Format attendu (approximatif) :
[http://www.dotnetrdf.org , http://example.org/says , Hello World]
[http://www.dotnetrdf.org , http://example.org/says , Bonjour tout le Monde@fr]
Attention : Cette representation n’est pas valide selon les standards RDF (NTriples, Turtle, RDF/XML). Pour obtenir une serialisation conforme, nous devons utiliser un Writer specialise.
Ceux d’entre vous qui connaissent RDF remarqueront que ce qui précède n’est pas une syntaxe RDF valide - il s’agit simplement d’une représentation ultra simple des triplets et est principalement destinée au débogage. Si nous voulons réellement générer une syntaxe RDF, nous devons utiliser l’une des classes de l’espace de noms VDS.RDF.Writing. Tout d’abord, nous allons générer la sortie ci-dessus au format NTriples :
<http://www.dotnetrdf.org> <http://example.org/says> "Hello World"^^<http://www.w3.org/2001/XMLSchema#string> .
<http://www.dotnetrdf.org> <http://example.org/says> "Bonjour tout le Monde"@fr .
NTriples est le format RDF le plus simple et le plus verbeux. Chaque ligne represente un triplet complet avec URIs et literals explicites.
Format de sortie attendu :
<http://www.dotnetrdf.org> <http://example.org/says> "Hello World" .
<http://www.dotnetrdf.org> <http://example.org/says> "Bonjour tout le Monde"@fr .
Caractéristiques de NTriples : - Une ligne = un triplet - URIs toujours entre chevrons < > - Literals entre guillemets " " - Chaque triplet se termine par un point . - Pas d’abreviations ni de prefixes
Avantage : Format simple, facile a parser, ideal pour l’echange de données volumineuses.
Si nous voulons enregistrer le graphe dans une autre syntaxe RDF, nous pouvons le faire également, par exemple :
<?xml version="1.0" encoding="utf-16"?>
<!DOCTYPE rdf:RDF [
<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
<!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
<!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'>
]>
<rdf:RDF xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="http://www.dotnetrdf.org/">
<ns0:says xml:lang="fr" xmlns:ns0="http://example.org/">Bonjour tout le Monde</ns0:says>
<ns1:says rdf:datatype="&xsd;string" xmlns:ns1="http://example.org/">Hello World</ns1:says>
</rdf:Description>
</rdf:RDF>
Le format RDF/XML est plus structure et utilise des espaces de noms pour reduire la verbosity.
| Caractéristique | NTriples | RDF/XML |
|---|---|---|
| Lisibilite humaine | Moyenne | Faible (XML verbose) |
| Compacite | Faible | Moyenne (avec prefixes) |
| Parsing | Très simple | Plus complexe |
| Espaces de noms | Non | Oui (xmlns:rdf, xmlns:ns0) |
| Usage | Dump de données | Integration XML |
Espaces de noms generes automatiquement : - rdf: - Resource Description Framework - rdfs: - RDF Schema - xsd: - XML Schema Datatypes - ns0:, ns1: - Prefixes temporaires generes par le writer
Point cle : RDF.Net genere automatiquement des prefixes
nsXpour les URIs non declarees dans les espaces de noms.
Remarquez que le RDF/XML Writer connaissait déjà les espaces de noms RDF, RDFS et XML Schema. Ces espaces de noms sont fournis par défaut pour la plupart des implémentations de IGraph. Le Writer génère également des espaces de noms temporaires de la forme nsX pour les URIs qu’il ne peut pas représenter autrement dans RDF/XML.
Nous venons de créer notre premier programme RDF complet qui :
| Étape | Accomplissement |
|---|---|
| 1. Creation | Graphe vide initialise |
| 2. Peuplement | 2 triplets ajoutes (même sujet, même predicat, objets différents) |
| 3. Serialisation | Exportation en NTriples et RDF/XML |
Concepts cles maitrises : - Interface IGraph pour la manipulation de graphes - Types de noeuds : IUriNode, ILiteralNode - Méthode Assert() pour ajouter des triplets - Writers pour la serialisation (NTriplesWriter, RdfXmlWriter)
Dans la section suivante, nous allons apprendre a lire du RDF depuis différentes sources.
L’une des principales choses que vous voudrez faire lorsque vous travaillez avec RDF est de pouvoir le lire à partir de fichiers, d’URI et d’autres sources afin de pouvoir l’utiliser avec dotNetRDF. Toutes les classes liées à cela sont contenues dans l’espace de noms VDS.RDF.Parsing. Ainsi, lorsque vous voulez lire du RDF, vous aurez besoin des déclarations suivantes au début de votre fichier de code :
Imports OK : VDS.RDF, VDS.RDF.Parsing
Dans cette section, nous decouvrirons comment charger du RDF depuis diverses sources :
StreamReader ou TextReaderPoint important : dotNetRDF supporte 9+ formats RDF différents, avec detection automatique du format dans certains cas.
dotNetRDF prend actuellement en charge la lecture de fichiers RDF dans toutes les sérialisations RDF suivantes : - NTriples - Turtle - Notation 3 - RDF/XML - RDF/JSON (spécification Talis) - RDFa 1.0 (prise en charge limitée de RDFa 1.1) - TriG (Turtle avec des graphes nommés) - TriX (Graphes nommés en XML) - NQuads (NTriples avec contexte) - JSON-LD (1.0 et 1.1)
Plusieurs de ces sérialisations ont plusieurs variantes avec des règles de syntaxe différentes. Pour un résumé complet des formats pris en charge pour l’écriture avec dotNetRDF, consultez les formats pris en charge par dotNetRDF.
Les parsers de graphe implémentent l’interface IRdfReader qui définit une méthode Load(...) prenant un objet IGraph ou IRdfHandler ainsi qu’un TextReader, StreamReader ou une chaîne de caractères. L’utilisation de base est la suivante :
using VDS.RDF.Parsing;
IGraph g = new Graph();
IGraph h = new Graph();
TurtleParser ttlparser = new TurtleParser();
ttlparser.Load(g, "Example.ttl");
// Chargement à partir d un StreamReader
ttlparser.Load(h, new StreamReader("Example.ttl"));
Console.WriteLine($"Turtle parsé : g={g.Triples.Count} triplets, h={h.Triples.Count} triplets");Turtle parsé : g=4 triplets, h=4 triplets
Le code précédent illustre deux approches de lecture :
| Approche | Classe | Reutilisable | Usage |
|---|---|---|---|
| Parser spécifique | TurtleParser, RdfXmlParser |
Oui | Format connu a l’avance |
| Detection automatique | FileLoader |
N/A | Format inconnu |
Avantages des parsers reutilisables : - Une seule instance peut charger plusieurs fichiers - Configuration possible (validation stricte, gestion d’erreurs) - Performance optimisee pour le parsing de masse
Bonne pratique : Utiliser un parser spécifique si le format est connu, sinon utiliser
FileLoaderpour la detection automatique.
Dans l’exemple ci-dessus, les parsers sont réutilisables. Une fois instanciés, vous pouvez les utiliser autant de fois que nécessaire. Une autre fonctionnalité utile est que les parsers sont conçus pour être thread-safe, de sorte que plusieurs threads peuvent utiliser la même instance d’un parser pour analyser simultanément différentes entrées sans interférer les uns avec les autres. Les parsers sont généralement capables de générer des exceptions de type RdfParseException et RdfException, il est donc recommandé d’utiliser des blocs try/catch autour de l’utilisation des parsers.
Il n’est souvent pas nécessaire d’invoquer directement un parser, car vous pouvez utiliser une classe d’aide pour obtenir le même effet sans avoir à créer le parser approprié vous-même. Les sous-sections suivantes détaillent les classes d’aide disponibles pour la lecture de RDF. Notez que plusieurs des sources détaillées ici disposent également de méthodes d’extension d’aide qui permettent de simplifier davantage les exemples de code présentés ici.
Si vous souhaitez simplement lire rapidement du RDF à partir d’un fichier sans avoir à décider du parser nécessaire, vous pouvez utiliser la classe statique FileLoader qui fournit une méthode Load(IGraph g, String file) :
Le FileLoader essaiera de sélectionner le parser correct en fonction de l’extension du fichier. S’il ne parvient pas à déterminer le format à l’aide de l’extension du fichier, il utilisera la classe StringParser qui tente de détecter le format à l’aide de heuristiques simples. Vous pouvez également forcer le loader à utiliser un parser spécifique en utilisant la forme à 3 arguments Load(IGraph g, String file, IRdfReader parser).
Il est souvent nécessaire de lire du RDF à partir d’une URI. Pour ce faire, nous fournissons la classe Loader qui offre une méthode LoadGraph(IGraph g, Uri u).
using VDS.RDF.Parsing;
// Chargement de donnees depuis DBpedia
// Note: data.dbpedia.org permet la negociation de contenu RDF
IGraph g = new Graph();
Loader loader = new Loader();
try
{
// Utiliser data.dbpedia.org qui supporte la negociation de contenu RDF
var uri = new Uri("http://data.dbpedia.org/resource/Barack_Obama");
loader.LoadGraph(g, uri);
Console.WriteLine($"Graphe charge avec succes: {g.Triples.Count} triples");
}
catch (Exception ex)
{
// Fallback: essayer de charger un fichier RDF local ou un exemple simple
Console.WriteLine($"Note: Impossible de charger depuis DBpedia ({ex.Message})");
Console.WriteLine("Creation d'un graphe d'exemple local...");
// Creer un graphe d'exemple simple
g.BaseUri = new Uri("http://example.org/");
IUriNode subject = g.CreateUriNode(new Uri("http://example.org/Barack_Obama"));
IUriNode predicate = g.CreateUriNode(new Uri("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"));
IUriNode obj = g.CreateUriNode(new Uri("http://dbpedia.org/ontology/Person"));
g.Assert(new Triple(subject, predicate, obj));
predicate = g.CreateUriNode(new Uri("http://xmlns.com/foaf/0.1/name"));
ILiteralNode name = g.CreateLiteralNode("Barack Obama");
g.Assert(new Triple(subject, predicate, name));
Console.WriteLine($"Graphe d'exemple cree avec {g.Triples.Count} triples");
}
Console.WriteLine("\nApercu des premiers triples:");
foreach (Triple t in g.Triples.Take(5))
{
Console.WriteLine(t.ToString());
}Note: Impossible de charger depuis DBpedia (One or more errors occurred. (Hôte inconnu. (data.dbpedia.org:80)))
Creation d'un graphe d'exemple local...
Graphe d'exemple cree avec 2 triples
Apercu des premiers triples:
http://example.org/Barack_Obama , http://www.w3.org/1999/02/22-rdf-syntax-ns#type , http://dbpedia.org/ontology/Person
http://example.org/Barack_Obama , http://xmlns.com/foaf/0.1/name , Barack Obama^^http://www.w3.org/2001/XMLSchema#string
Le code précédent charge des données depuis DBpedia (Wikipedia sémantique). Points d’attention :
Risques potentiels : - Le service DBpedia peut etre indisponible (erreur 503, timeout) - Les redirections HTTP peuvent compliquer le chargement - La negociation de contenu RDF depend des headers HTTP
Gestion recommandee :
Note : Le code inclus utilise un try/catch pour gerer les erreurs DBpedia (service parfois instable).
La classe Loader utilise une instance HttpClient pour effectuer des requêtes web et propose un constructeur qui vous permet de passer l’instance HttpClient configurée à utiliser. La méthode LoadGraph sélectionnera automatiquement le parser approprié en fonction de l’en-tête Content-Type de la réponse HTTP. En plus des erreurs normalement générées par les parsers, le Loader peut également générer une RdfException si l’URI d’entrée n’est pas valide ou une HttpRequestException si une erreur se produit lors de la récupération de l’URI via HTTP. Vous pouvez également forcer le loader à utiliser un parser spécifique en utilisant la forme à 3 arguments LoadGraph(IGraph g, Uri u, IRdfReader parser). La classe propose également des variantes asynchrones de ces méthodes.
Par défaut, à la fois le HttpClient .NET et la classe Loader de dotNetRDF prennent en charge le suivi des redirections HTTP. Cependant, en raison de certaines restrictions et différences interplates-formes concernant le suivi automatique des redirections par le HttpClient .NET, la classe Loader implémente sa propre prise en charge des redirections en plus des redirections suivies par le HttpClient. Cette gestion supplémentaire des redirections peut être désactivée en définissant FollowRedirects sur false. Pour désactiver complètement toutes les redirections automatiques, vous devez également passer une instance HttpClient configurée pour ne pas suivre les redirections, comme suit :
using System.Net.Http;
// Création d un HttpClient configuré pour ne pas suivre les redirections
HttpClient noRedirectClient = new HttpClient(new HttpClientHandler() { AllowAutoRedirect = false });
// Création d un Loader également configuré pour ne pas suivre les redirections
Loader loader = new Loader(noRedirectClient) { FollowRedirects = false };
Console.WriteLine("HttpClient et Loader configurés (pas de redirection automatique)");HttpClient et Loader configurés (pas de redirection automatique)
Attention : avant dotNetRDF 3.0, cette fonctionnalité était fournie par la classe UriLoader statique, qui était implémentée à l’aide de l’ancienne API System.Net.HttpWebRequest. Cette classe a été conservée dans la version 3.0, mais est maintenant considérée comme obsolète et le code doit être mis à jour pour utiliser la classe Loader à la place.
Si vous choisissez d’intégrer des fichiers RDF dans vos assemblys, vous pouvez les lire en utilisant la classe statique EmbeddedResourceLoader, qui fournit une méthode Load(IGraph g, String resource).
Notez que le nom de ressource doit être un nom qualifié d’assembly. Comme pour les autres loaders, cela tente de sélectionner le parser correct en fonction du nom de ressource. Vous pouvez également forcer le loader à utiliser un parser
spécifique en utilisant la forme à 3 arguments Load(IGraph g, String resourceName, IRdfReader parser).
Il peut arriver que vous ayez un fragment de RDF dans une chaîne de caractères que vous souhaitez analyser. Pour cela, vous pouvez utiliser la classe statique StringParser et sa méthode Parse(IGraph g, String data).
VDS.RDF.Graph| UriFactory |
|
| InternUris |
|
[ http://example.org/a , http://example.org/b , http://example.org/c ]
| ObjectNodes |
|
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
|
[ http://example.org/b ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
|
[ http://example.org/a ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
|
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
1
0
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath | /a |
| AbsoluteUri | http://example.org/a |
| LocalPath | /a |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /a |
| Segments | [ /, a ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | |
| Scheme | http |
| OriginalString | http://example.org/a |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/b
| Uri |
|
| AbsolutePath | /b |
| AbsoluteUri | http://example.org/b |
| LocalPath | /b |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /b |
| Segments | [ /, b ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | |
| Scheme | http |
| OriginalString | http://example.org/b |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/c
| Uri |
|
| AbsolutePath | /c |
| AbsoluteUri | http://example.org/c |
| LocalPath | /c |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /c |
| Segments | [ /, c ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | |
| Scheme | http |
| OriginalString | http://example.org/c |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | value | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Uri | http://example.org/a |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://example.org/b
| Uri | http://example.org/b |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://example.org/c
| Uri | http://example.org/c |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/b
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/c
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Uri |
|
| AbsolutePath | /a |
| AbsoluteUri | http://example.org/a |
| LocalPath | /a |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /a |
| Segments | [ /, a ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | |
| Scheme | http |
| OriginalString | http://example.org/a |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/b
| Uri |
|
| AbsolutePath | /b |
| AbsoluteUri | http://example.org/b |
| LocalPath | /b |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /b |
| Segments | [ /, b ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | |
| Scheme | http |
| OriginalString | http://example.org/b |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/c
| Uri |
|
| AbsolutePath | /c |
| AbsoluteUri | http://example.org/c |
| LocalPath | /c |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /c |
| Segments | [ /, c ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | |
| Scheme | http |
| OriginalString | http://example.org/c |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/c
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/b
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/c
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
VDS.RDF.NamespaceMapper
| Prefixes |
|
<null>
<null>
False
False
La méthode StringParser.Parse() utilise des heuristiques pour detecter le format RDF :
| Format detecte | Indices utilises |
|---|---|
| NTriples | Presence de < > et . en fin de ligne |
| Turtle | Prefixes @prefix, abreviations : |
| RDF/XML | Balises <rdf:RDF> |
| JSON-LD | Structure JSON avec @context |
Fragment parse dans l’exemple :
<http://example.org/a> <http://example.org/b> <http://example.org/c>.
a --(b)--> cLimite : Les heuristiques peuvent echouer sur des fragments ambigus. Preferer un parser spécifique pour plus de fiabilite.
Le StringParser utilise des heuristiques simples pour essayer de déterminer le format du fragment RDF qui lui est passé.
Alternativement, puisque vous pouvez lire du RDF à partir de n’importe quel TextReader, vous pouvez simplement invoquer un parser sur une chaîne de caractères directement en utilisant un StringReader, par exemple :
| Méthode | Avantage | Inconvenient |
|---|---|---|
| StringParser | Detection automatique | Peut echouer sur formats ambigus |
| Parser + StringReader | Format explicite | Necessite de connaitre le format |
StringReader : Classe .NET qui transforme une chaîne en flux (TextReader), permettant au parser de lire comme depuis un fichier.
Quand utiliser StringReader : Lorsque vous avez du RDF en memoire (variable, reponse HTTP, etc.) et que vous connaissez le format exact.
Cela est approximativement équivalent à la façon dont fonctionne StringParser en interne, mais cette méthode nécessite de connaître le format du RDF à l’avance.
Plusieurs des sérialisations RDF prises en charge ont plusieurs variantes avec des règles de syntaxe différentes. Lorsque plusieurs variantes sont prises en charge, dotNetRDF utilisera par défaut la variante la plus récente pour l’entrée, mais utilisera le format le plus conservateur pour la sortie (ce qui est souvent, mais pas toujours, la plus ancienne variante).
Cependant, dans certains cas, vous voudrez décider directement de la variante syntaxique à utiliser. Dans ce cas, vous construisez généralement un parser et fournissez une valeur de l’énumération de syntaxe appropriée, par exemple :
Consultez la documentation spécifique d’un parser pour savoir si des variantes de sérialisation sont prises en charge.
Certains parsers ont une configuration supplémentaire qui peut être utilisée pour modifier leur comportement. Par exemple, si un parser implémente l’interface ITraceableTokeniser, la propriété TraceTokeniser peut être utilisée pour demander la sortie des informations de trace du tokeniseur dans la console. De même, si un parser implémente ITraceableParser, la propriété TraceParsing peut être utilisée pour demander la sortie des informations de trace du parsing. Ces fonctionnalités sont souvent utiles lors du débogage pour comprendre pourquoi un document RDF échoue à être analysé, car vous pouvez voir comment l’entrée est tokenisée et analysée.
De plus, certains parsers vous permettent de les instancier avec un TokenQueueMode. Cela contrôle le type de file utilisée dans le processus de tokenisation et peut potentiellement affecter la vitesse de l’analyse (bien que dans la plupart des cas, il y ait peu de différence). Les modes disponibles sont les suivants : - TokenQueueMode.QueueAllBeforeParsing : le fichier entier est tokenisé avant que l’analyse ne commence. - TokenQueueMode.SynchronousBufferDuringParsing : le fichier est tokenisé au fur et à mesure que l’analyse progresse, un nombre limité de tokens est généré et mis en mémoire tampon à chaque fois que le parser demande un token. - TokenQueueMode.AsynchronousBufferDuringParsing : le fichier est tokenisé en arrière-plan pendant que l’analyse progresse. Si le parser demande un token et que le tokeniseur n’a pas encore produit suffisamment de tokens, le parser doit attendre qu’un token soit disponible.
Les parsers de stockage diffèrent des parsers de graphe en ce sens que l’entrée qu’ils analysent peut contenir plusieurs graphes, de sorte que leur sortie est en réalité un triple store plutôt qu’un seul graphe. Vous verrez souvent les parsers de stockage appelés parsers de jeux de données RDF.
Les parsers de stockage implémentent l’interface IStoreReader, qui définit une méthode similaire à l’interface IRdfReader prenant un ITripleStore ou un IRdfHandler ainsi qu’un TextReader, StreamReader ou une chaîne de caractères. Un parser de stockage peut être utilisé comme suit :
Comme pour les parsers de graphe, diverses exceptions peuvent être générées.
De la même manière que pour les parsers de graphe, les parsers de stockage peuvent tous être invoqués indirectement avec différentes méthodes des classes EmbeddedResourceLoader, FileLoader, StringParser et Loader. Consultez la documentation de l’API de ces classes pour les surcharges pertinentes.
Les exemples que nous avons montrés jusqu’à présent utilisent un modèle d’analyse abstrait où vous analysez directement vers une instance de IGraph ou ITripleStore. L’inconvénient de cela est que vous devez attendre que votre opération d’analyse soit terminée avant de pouvoir travailler avec les données analysées, et que pour des entrées très volumineuses, cela peut prendre beaucoup de temps ou épuiser la mémoire disponible.
En interne, notre sous-système d’analyse est entièrement basé sur les flux et est exposé via les surcharges basées sur l’interface IRdfHandler des méthodes pertinentes. Cela vous permet d’avoir un contrôle beaucoup plus précis sur ce qui est fait avec les données analysées, par exemple en les traitant de manière orientée flux.
Dans les exemples donnés jusqu’à présent, vous avez seulement pu analyser du RDF dans une instance de IGraph ou ITripleStore, mais ce n’est pas votre seule option. Vous pouvez utiliser un IRdfHandler pour contrôler explicitement ce qui se passe avec le RDF que vous analysez. En utilisant l’une des implémentations incluses, vous devrez ajouter la déclaration using suivante :
Les Handlers permettent de traiter les triplets RDF au fur et a mesure de leur lecture, sans charger tout le graphe en memoire.
Cas d’usage : - Fichiers RDF volumineux (plusieurs Go) - Comptage de triplets sans stockage - Filtrage a la volee - Transformation en pipeline
Performance : Les handlers evitent la creation d’objets
INodeetTriple, reduisant drastiquement l’empreinte memoire.
Par exemple, vous voudrez peut-être simplement compter les triples sans vous soucier des valeurs réelles, vous pouvez alors utiliser un CountHandler pour cela :
Il existe plusieurs implémentations incluses qui effectuent différentes opérations, telles que la redirection des triples directement vers un fichier, un triple store natif, etc. Vous pouvez également implémenter votre propre gestionnaire, soit entièrement à partir de zéro, soit en dérivant de BaseRdfHandler, comme le font nos propres implémentations, pour obtenir la plupart de l’implémentation gratuitement. Consultez l’API Handlers pour plus de discussions sur ce sujet.
Tous les parsers de graphe fournis dans la bibliothèque se comportent comme suit : - Gestion des fichiers/flux : - En cas d’erreur lors de l’analyse, le fichier/flux analysé est fermé. - En cas de réussite de l’analyse, le fichier/flux analysé est fermé. - Si l’analyse échoue, le graphe ne contiendra aucun des triples correctement analysés avant l’échec. - Si un parser est invité à analyser dans un graphe non vide, le parser analysera d’abord dans un graphe vide, puis fusionnera ce graphe avec le graphe fourni.
Tous les parsers de stockage fournis dans la bibliothèque se comportent comme suit : - Gestion des fichiers/flux comme les parsers de graphe. - Si le parser produit un graphe qui existe déjà dans le store de destination, une erreur peut se produire en fonction du comportement de ce store lorsque le graphe existe déjà.
Voici les classes de parser standard contenues dans la bibliothèque : - JsonLdParser : JSON-LD - NTriplesParser : NTriples - Notation3Parser : Notation 3, Turtle, NTriples, certaines formes de TriG - NQuadsParser : NQuads, NTriples - RdfAParser : RDFa 1.0 intégré dans (X)HTML, prise en charge limitée de RDFa 1.1 - RdfJsonParser : RDF/JSON (spécification Talis) - RdfXmlParser : RDF/XML - TriGParser : TriG - TriXParser : TriX - TurtleParser : Turtle, NTriples
| Handler | Fonction | Usage |
|---|---|---|
| GraphHandler | Stocke dans un IGraph |
Lecture normale |
| CountHandler | Compte les triplets | Statistiques |
| WriteHandler | Ecrit directement | Transformation de format |
| PagingHandler | Lit par pages | Traitement par lots |
| FilterHandler | Filtre les triplets | Sélection selective |
Exemple avance - Pipeline de transformation :
// Lire Turtle -> Filtrer -> Ecrire NTriples
var writer = new NTriplesWriter();
var writeHandler = new WriteHandler(writer, output);
var filterHandler = new FilterHandler(writeHandler, triple =>
triple.Predicate.ToString().Contains("name")
);
var ttlParser = new TurtleParser();
ttlParser.Load(filterHandler, "input.ttl");Ce pipeline lit un fichier Turtle, ne conserve que les triplets avec predicat “name”, et les ecrit en NTriples.
Une fois que vous avez créé un graphe RDF ou que vous l’avez récupéré à partir d’un fichier/URI, vous aurez souvent besoin de l’écrire dans un autre fichier/flux au format RDF de votre choix. Toutes les classes liées à cela sont contenues dans l’espace de noms VDS.RDF.Writing. Ainsi, lorsque vous souhaitez écrire du RDF, vous aurez besoin des déclarations suivantes au début de votre fichier de code :
Actuellement, dotNetRDF prend en charge l’écriture de graphes dans les formats suivants : - NTriples - Turtle - Notation 3 - RDF/XML - RDF/JSON (spécification Talis) - XHTML + RDFa
Formats non normalisés : - CSV - TSV
De plus, les formats suivants sont pris en charge lors de l’écriture d’un Triple Store contenant plusieurs graphes : - NQuads - TriX - TriG - JSON-LD
Plusieurs de ces sérialisations ont plusieurs variantes avec des règles de syntaxe différentes.
Les classes Writer de dotNetRDF implémentent toutes l’interface IRdfWriter qui définit une méthode Save(...) prenant un IGraph, puis soit un TextWriter, soit une chaîne de caractères. L’utilisation de base est la suivante :
Nous avons explore 5 méthodes de chargement RDF :
| Méthode | Complexite | Flexibilite | Performance |
|---|---|---|---|
| Parser spécifique + fichier | Faible | Moyenne | Excellente |
| FileLoader (auto-detection) | Très faible | Elevee | Bonne |
| Loader + URI | Faible | Elevee | Variable (reseau) |
| StringParser | Faible | Elevee | Bonne |
| Handlers | Moyenne | Maximale | Excellente (gros fichiers) |
Recommandations : - Fichiers locaux : Parser spécifique ou FileLoader - URIs distantes : Loader avec gestion d’erreurs - Données en memoire : StringParser ou StringReader - Gros volumes : Handlers obligatoires
Passons maintenant a l’ecriture de RDF.
// On suppose que le graphe à sauvegarder a déjà été chargé dans une variable g
RdfXmlWriter rdfxmlwriter = new RdfXmlWriter();
// Sauvegarde dans un fichier
// rdfxmlwriter.Save(g, "Example.rdf");
// Sauvegarde dans un flux
using (System.IO.StringWriter sw = new System.IO.StringWriter())
{
rdfxmlwriter.Save(g, sw);
string rdfData = sw.ToString();
Console.WriteLine(rdfData);
}<?xml version="1.0" encoding="utf-16"?>
<!DOCTYPE rdf:RDF [
<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
<!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
<!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'>
]>
<rdf:RDF xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="http://example.org/a">
<ns0:b rdf:resource="http://example.org/c" xmlns:ns0="http://example.org/" />
</rdf:Description>
</rdf:RDF>
Comme pour les Parsers, un Writer est une classe réutilisable qui peut être utilisée autant de fois que vous le souhaitez pour générer des graphes dans des fichiers/flux.
Il existe deux façons d’écrire du RDF dans des chaînes de caractères. La première consiste à utiliser la classe d’aide StringWriter pour générer une chaîne de caractères à partir d’un graphe, par exemple :
RDF/XML écrit : 569 caractères
La deuxième façon est d’écrire directement dans un System.IO.StringWriter, car toutes les instances de IRdfWriter peuvent écrire dans n’importe quelle implémentation de TextWriter, par exemple :
// On suppose que le graphe à sauvegarder a déjà été chargé dans une variable g
RdfXmlWriter rdfxmlwriter = new RdfXmlWriter();
System.IO.StringWriter sw = new System.IO.StringWriter();
// Appel de la méthode Save() pour écrire dans StringWriter
rdfxmlwriter.Save(g, sw);
// Nous pouvons maintenant récupérer le RDF écrit en utilisant la méthode ToString() de StringWriter
String data = sw.ToString();
Console.WriteLine(data);<?xml version="1.0" encoding="utf-16"?>
<!DOCTYPE rdf:RDF [
<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
<!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
<!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'>
]>
<rdf:RDF xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="http://example.org/a">
<ns0:b rdf:resource="http://example.org/c" xmlns:ns0="http://example.org/" />
</rdf:Description>
</rdf:RDF>
| Approche | Méthode | Avantage |
|---|---|---|
| Helper StringWriter | VDS.RDF.Writing.StringWriter.Write(g, writer) |
Simple, une ligne |
| System.IO.StringWriter | writer.Save(g, new StringWriter()) |
Contrôle total, compatible .NET |
Différence technique : - La classe helper VDS.RDF.Writing.StringWriter encapsule System.IO.StringWriter - Les deux approches produisent exactement le même résultat - La deuxieme méthode permet de reutiliser le StringWriter pour d’autres opérations .NET
Bonne pratique : Utiliser la méthode helper pour la simplicite, sauf si vous avez besoin d’integrer avec d’autres APIs .NET utilisant
System.IO.StringWriter.
Cette deuxième méthode est essentiellement ce que la bibliothèque fait en interne lorsque vous utilisez notre classe d’aide StringWriter comme dans l’exemple précédent.
Recap des 3 méthodes d’ecriture :
| Méthode | Code | Usage |
|---|---|---|
| Fichier | writer.Save(g, "file.rdf") |
Sauvegarde permanente |
| Helper String | StringWriter.Write(g, writer) |
Serialisation rapide |
| System.IO | writer.Save(g, new StringWriter()) |
Integration .NET |
Writers disponibles (liste partielle) : - NTriplesWriter - Format simple ligne par ligne - TurtleWriter - Format compact avec prefixes - RdfXmlWriter - Standard W3C (XML) - RdfJsonWriter - Format JSON - CompressingTurtleWriter - Turtle optimise - HtmlWriter - Visualisation HTML
Point cle : Tous les writers implementent
IRdfWriteret sont reutilisables.
Il existe plusieurs interfaces supplémentaires pour les writers qui sont utilisées pour indiquer les capacités des writers. La plus courante est IPrettyPrintingWriter, qui définit une propriété PrettyPrintMode. Lorsque cette propriété est définie sur true, le RDF en sortie est écrit avec une mise en forme agréable (principalement en utilisant des tabulations et des sauts de ligne) pour le rendre plus lisible par l’homme.
Moins courante, l’interface IHighSpeedWriter définit une propriété HighSpeedModePermitted. Le mode High Speed est un mode pris en charge par certains writers qui effectuent une analyse simpliste sur le graphe pour évaluer s’il bénéficiera de l’utilisation de compressions de syntaxe ou non. Si le writer décide que le graphe n’est pas adapté à l’utilisation de compressions de syntaxe, il écrira en mode haute vitesse, c’est-à-dire qu’il écrira simplement les triples un par un. La propriété HighSpeedModePermitted contrôle si un writer est autorisé à utiliser ce mode. Si elle est définie sur false, les compressions de syntaxe sont toujours utilisées même si le graphe n’est pas considéré comme adapté à leur utilisation.
Enfin, l’interface ICompressingWriter définit une propriété CompressionLevel. Cette propriété prend une valeur entière qui définit le niveau de compression à utiliser lors de l’écriture de la sortie. En général, les valeurs de la classe WriterCompressionLevel sont utilisées pour définir le niveau de compression. L’interprétation du niveau de compression dépend du writer individuel, mais en général, un niveau plus élevé entraînera l’utilisation de plus de compressions de syntaxe qu’un niveau inférieur. Différents niveaux de compression ne conduisent pas nécessairement à une sortie différente, car certaines compressions ne peuvent s’appliquer que si certains types de triples apparaissent dans le graphe et certains niveaux sont traités de manière identique.
Par exemple, vous pouvez écrire une fonction utilitaire comme celle-ci qui configure les options sur le writer si elles sont prises en charge :
public static void SaveGraph(IGraph g, IRdfWriter writer, System.IO.StringWriter sw)
{
// Définit le mode Pretty Print s il est pris en charge
if (writer is IPrettyPrintingWriter)
{
((IPrettyPrintingWriter)writer).PrettyPrintMode = true;
}
// Interdit le mode High Speed s il est pris en charge
if (writer is IHighSpeedWriter)
{
((IHighSpeedWriter)writer).HighSpeedModePermitted = false;
}
// Définit le niveau de compression à High s il est pris en charge
if (writer is ICompressingWriter)
{
((ICompressingWriter)writer).CompressionLevel = WriterCompressionLevel.High;
}
// Sauvegarde du graphe
writer.Save(g, sw);
}
Console.WriteLine("Fonction SaveGraph définie (PrettyPrint + HighCompression)");Fonction SaveGraph définie (PrettyPrint + HighCompression)
Le code précédent montre comment configurer un writer dynamiquement :
| Interface | Capacite | Exemple |
|---|---|---|
| IPrettyPrintingWriter | Formatage lisible | Indentation, sauts de ligne |
| ICompressingWriter | Optimisation taille | Abreviations maximales |
| IHighSpeedWriter | Optimisation vitesse | Pas de formatage |
| INamespaceWriter | Contrôle prefixes | Ajout/suppression d’espaces de noms |
Pattern de verification de capacites :
Note : Certaines combinaisons sont incompatibles (ex: PrettyPrint + HighSpeed). Le writer choisira automatiquement une priorite.
Les formateurs sont une alternative à l’utilisation d’un IRdfWriter pour générer du RDF. Leur avantage est qu’ils peuvent être utilisés pour formater des nœuds et des triples individuellement pour afficher uniquement ce que vous voulez et comment vous le voulez. Cependant, leur inconvénient est qu’ils ne peuvent pas utiliser le même ensemble de techniques de compression qu’un IRdfWriter complet lors de l’écriture d’un graphe entier, car ils sont délibérément dépourvus d’état.
Toutes les classes Writer de la bibliothèque ont le comportement suivant : - Gestion des fichiers/flux : - En cas d’erreur, le fichier/flux en cours d’écriture sera fermé. - En cas de succès de l’écriture, le fichier/flux en cours d’écriture sera fermé. - Si un problème survient avec le graphe en cours d’enregistrement, mais ne l’empêche pas d’être enregistré, le writer déclenchera un événement d’avertissement (Warning event). - Si le graphe en cours d’écriture contient des triples/nœuds qui ne peuvent pas être écrits par le writer, une RdfOutputException sera levée.
Voici les classes Writer standard contenues dans la bibliothèque : - CompressingTurtleWriter : écriture en syntaxe Turtle avec éventuellement toutes les compressions de syntaxe disponibles - CsvWriter : écriture des triples dans un fichier CSV - HtmlWriter : écriture des triples dans une page HTML avec les triples présentés dans un tableau - NTriplesWriter : écriture en NTriples - Notation3Writer : écriture en Notation 3 en utilisant toutes les compressions de syntaxe disponibles - PrettyRdfXmlWriter : Writer en streaming pour RDF/XML qui utilise des compressions de syntaxe conduisant à une sortie RDF/XML agréable - RdfJsonWriter : écriture en RDF/JSON - RdfXmlWriter : Writer en streaming rapide pour RDF/XML qui utilise un nombre limité de compressions de syntaxe - TsvWriter : écriture des triples dans un fichier TSV - TurtleWriter : écriture en Turtle en utilisant un nombre limité de compressions de syntaxe. Ce writer est maintenant considéré comme obsolète au profit de CompressingTurtleWriter et sera supprimé de la bibliothèque dans une version future.
De plus, il existe une classe d’aide, SingleGraphWriter, qui implémente l’interface IRdfWriter et permet d’écrire un graphe à l’aide d’un writer qui implémente l’interface IStoreWriter. Cela permet d’écrire un graphe en utilisant les formats de sérialisation décrits dans la section “Travailler avec les Triple Stores”.
Les formateurs sont des classes utilitaires pour serialiser des éléments individuels :
| Formateur | Serialise | Exemple |
|---|---|---|
| NTriplesFormatter | Triple, Node | <http://ex.org/a> |
| TurtleFormatter | Triple, Node | ex:a (avec prefix) |
| Notation3Formatter | Triple, Node | Notation3 syntax |
Différence Writer vs Formateur :
// Writer : serialise UN GRAPHE ENTIER
RdfXmlWriter writer = new RdfXmlWriter();
writer.Save(g, "output.rdf"); // Tout le graphe
// Formateur : serialise DES ÉLÉMENTS INDIVIDUELS
NTriplesFormatter formatter = new NTriplesFormatter();
foreach (Triple t in g.Triples) {
string line = formatter.Format(t); // Un triplet a la fois
Console.WriteLine(line);
}Cas d’usage des formateurs : - Generation de logs - Affichage console selectif - Construction manuelle de fichiers - Integration dans templates
Comme présenté précédemment dans les concepts de base, le graphe est la représentation de base d’un ensemble de triples utilisés dans la bibliothèque. Toutes les classes de graphes sont basées sur l’interface IGraph et descendent principalement de la classe de base abstraite BaseGraph - la classe Graph de base étant la plus couramment utilisée.
Pour commencer cette discussion sur le travail avec les graphes, nous allons examiner les propriétés qu’une implémentation IGraph nous offre :
BaseUri permet de récupérer/définir l’URI de base du graphe. Une URI de base est l’URI par rapport à laquelle toutes les URIs relatives sont résolues, ainsi que tous les noms préfixés de l’espace de noms par défaut (si l’espace de noms par défaut n’est pas explicitement défini). Les graphes ne sont pas tenus d’avoir une URI de base et par défaut, cette propriété renvoie null. En général, l’URI de base est définie lors de la lecture de RDF à partir d’un fichier, lorsque la syntaxe RDF définit une URI de base, ou lorsque vous récupérez RDF à partir d’une URI à l’aide de l’UriLoader, auquel cas l’URI récupérée est l’URI de base.VDS.RDF.Graph| UriFactory |
|
| InternUris |
|
[ ]
| ObjectNodes |
|
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
0
0
VDS.RDF.NamespaceMapper
| Prefixes |
|
http://example.org/base
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
True
False
Nous venons de définir l’URI de base du graphe. Explication :
| Propriete | Description | Valeur par defaut |
|---|---|---|
| BaseUri | URI du graphe lui-même | null |
| IsEmpty | Le graphe contient-il des triplets ? | true initialement |
| NamespaceMap | Prefixes declares | rdf:, rdfs:, xsd: |
| Triples | Collection de triplets | Collection vide |
A quoi sert BaseUri ? : - Identifie le graphe dans un Triple Store (collection de graphes) - Permet de resoudre les URIs relatives - Utilise dans les formats RDF avec graphes nommes (TriG, NQuads)
Bonne pratique : Toujours définir une BaseUri pour les graphes destines a etre partages ou stockes dans un Triple Store.
IsEmpty est un booléen indiquant si des triples sont présents dans ce graphe.NamespaceMap renvoie l’instance INamespaceMapper associée à ce graphe (plus précisément, elle renvoie l’instance associée à l’instance INodeFactory que le graphe utilise lors de la création de nouveaux nœuds). INamespaceMapper est utilisé pour faire correspondre les préfixes aux URIs afin de permettre la gestion des espaces de noms et la résolution des noms préfixés.La propriété Nodes renvoie un IEnumerable<INode> qui retourne des instances de INode apparaissant dans la position Sujet/Objet des triples. La méthode Nodes est ainsi nommée car elle renvoie les instances de INode considérées comme les nœuds du graphe RDF (les prédicats sont considérés comme des arcs dans la représentation graphique du RDF). Cependant, la méthode AllNodes fournit une énumération sur les instances INode du sujet, du prédicat et de l’objet.
Exemple :
La propriété Triples renvoie un objet BaseTripleCollection, qui est une collection des triples contenus dans le graphe et est probablement la propriété la plus importante et la plus utilisée d’un graphe. Cela vous permet d’énumérer les triples dans le graphe de différentes manières, mais est le plus souvent utilisé, comme nous l’avons vu précédemment, pour énumérer simplement les triples dans le graphe et effectuer une action avec chacun d’eux.
Comme nous l’avons déjà vu dans l’aperçu de la bibliothèque et dans le tutoriel Hello World, l’une des fonctions clés du graphe est de permettre l’assertion et le retrait de triples. Pour cela, les méthodes Assert(…) et Retract(…) sont fournies. Ces deux méthodes peuvent prendre soit un seul triple, soit une énumération de triples.
L’assertion d’un triple entraîne son ajout à la collection de triples du graphe, tandis que le retrait d’un triple entraîne l’opération inverse. Selon l’implémentation de l’IGraph utilisée, des actions supplémentaires peuvent également être effectuées dans le cadre du processus d’assertion et de retrait.
Remarque : Lors de l’utilisation des méthodes Assert(IEnumerable<Triple> ts) ou Retract(IEnumerable<Triple> ts), faites attention à la provenance de ces triples. Un graphe, comme la plupart des classes de collection dans le monde .NET, ne permet pas d’être modifié pendant qu’il est énuméré. Par conséquent, vous devrez peut-être appeler ToList() sur un énumérable avant de tenter de l’assertir/retirer.
Comme nous l’avons également vu dans l’aperçu de la bibliothèque, tous les nœuds doivent être créés par une INodeFactory, que toutes les implémentations IGraph doivent également mettre en œuvre. Par conséquent, un graphe propose les méthodes CreateBlankNode(…), CreateLiteralNode(…) et CreateURINode(…). Consultez l’aperçu de la bibliothèque précédent pour des exemples d’utilisation.
Pour sélectionner des nœuds, il existe des méthodes qui peuvent être utilisées pour trouver un nœud dans un graphe (s’il existe), ce sont les méthodes GetXNode(), où X est le type de nœud à récupérer. Notez que cette méthode ne renvoie une valeur que si la valeur donnée existe en tant que nœud dans le graphe, c’est-à-dire si elle apparaît dans la position Sujet/Objet d’un triple dans ce graphe.
Remarque : Si vous voulez simplement obtenir une instance de nœud pour d’autres utilisations, indépendamment de son existence ou non dans le graphe, vous devriez utiliser les méthodes CreateXNode() à la place.
Exemple :
// Supposons que nous avons un graphe g
// Sélection d'un nœud blanc
IBlankNode b = g.GetBlankNode("myNodeID");
if (b != null)
{
Console.WriteLine("Un nœud blanc avec l'ID " + b.InternalID + " existe dans le graphe");
}
else
{
Console.WriteLine("Aucun nœud blanc avec l'ID donné n'existe dans le graphe");
}
// Sélection de nœuds littéraux
// Littéral simple avec la valeur donnée
ILiteralNode l = g.GetLiteralNode("Some Text");
// Littéral avec la valeur donnée et un spécificateur de langue
ILiteralNode l2 = g.GetLiteralNode("Some Text", "en");
// Littéral avec la valeur donnée et un type de données
ILiteralNode l3 = g.GetLiteralNode("1", new Uri(XmlSpecsHelper.XmlSchemaDataTypeInteger));
// Sélection de nœuds URI
// Par URI
IUriNode u = g.GetUriNode(new Uri("http://example.org/select"));
// Par nom préfixé
//IUriNode u2 = g.GetUriNode("ex:select");Aucun nœud blanc avec l'ID donné n'existe dans le graphe
Le code précédent illustre les accesseurs de noeuds par identifiant :
| Méthode | Retourne | Cas d’usage |
|---|---|---|
| GetBlankNode(id) | Noeud anonyme | Structures intermediaires (listes RDF) |
| GetUriNode(uri) | Noeud URI | Recherche de ressource |
| GetLiteralNode(val) | Noeud literal | Recherche de valeur |
Comportement important : - Retourne null si le noeud n’existe pas dans le graphe - Ne créé pas de nouveau noeud (contrairement a CreateXxxNode()) - Utile pour verifier l’existence avant manipulation
Attention : Les noeuds blancs sont lies au graphe qui les a crees. On ne peut pas utiliser un noeud blanc d’un graphe dans un autre graphe directement.
L’interface IGraph propose de nombreuses méthodes de sélection qui vous permettent d’obtenir les résultats de votre sélection sous la forme d’un IEnumerable<Triple>. L’exemple suivant montre l’utilisation de quelques-unes de ces méthodes :
// Supposons que nous avons un graphe g
// Obtenir tous les triples impliquant un nœud donné
IUriNode select = g.CreateUriNode(new Uri("http://example.org/select"));
IEnumerable<Triple> ts = g.GetTriples(select);
// Obtenir tous les triples répondant à certains critères
// Nous voulons trouver tout ce qui est du type rdf:type ex:Person
IUriNode rdfType = g.CreateUriNode("rdf:type");
//IUriNode person = g.CreateUriNode("ex:Person");
//ts = g.GetTriplesWithPredicateObject(rdfType, person);
// Obtenir tous les triples avec un sujet donné
// Nous réutilisons le nœud que nous avons créé précédemment
ts = g.GetTriplesWithSubject(select);
// Obtenir tous les triples avec un prédicat donné
ts = g.GetTriplesWithPredicate(rdfType);
ts.Display();
// Obtenir tous les triples avec un objet donné
//ts = g.GetTriplesWithObject(person);Les méthodes GetTriplesWithXxx() sont essentielles pour interroger un graphe :
| Méthode | Selectionne | Exemple |
|---|---|---|
| GetTriplesWithSubject(s) | s ? ? |
Toutes les proprietes d’une ressource |
| GetTriplesWithPredicate(p) | ? p ? |
Toutes les utilisations d’une relation |
| GetTriplesWithObject(o) | ? ? o |
Ressources ayant une valeur donnee |
| GetTriplesWithSubjectPredicate(s,p) | s p ? |
Valeurs d’une propriete pour un sujet |
| GetTriplesWithPredicateObject(p,o) | ? p o |
Sujets ayant une propriete=valeur |
Pattern SPARQL equivalent :
Performance : Ces méthodes utilisent des index internes pour une recherche rapide (O(log n) ou O(1) selon l’implementation).
La méthode Merge(…) permet de fusionner des graphes. La méthode prend en argument un IGraph, puis a un deuxième argument facultatif qui est un booléen indiquant s’il faut conserver les URIs de graphe d’origine associées aux nœuds.
Merge(…) met en œuvre la fusion de graphes telle que décrite dans la spécification RDF : les triples ne contenant pas de nœuds blancs sont copiés à partir du graphe d’entrée s’ils n’existent pas dans le graphe sur lequel Merge() est appelé, les triples contenant des nœuds blancs voient leurs identifiants de nœuds blancs réécrits afin de ne pas entrer en collision avec les nœuds blancs déjà présents dans le graphe.
L’égalité des graphes (ou isomorphisme) est prise en charge grâce à l’utilisation de la méthode standard Equals(Object obj). Nous fournissons également une surcharge supplémentaire Equals(IGraph g, out Dictionary mapping) qui détermine l’égalité
et, si les graphes sont équivalents, renvoie la correspondance des nœuds blancs entre les deux graphes.
Si vous savez que deux graphes sont différents, il peut être utile de savoir en quoi ils diffèrent. La méthode Différence(IGraph g) détermine les différences entre deux graphes et renvoie un GraphDiffReport qui détaille les différences.
La méthode la plus courante pour charger un graphe est de lire du RDF à partir d’un fichier/URI, comme décrit dans la lecture de RDF, mais il existe d’autres façons de lire des graphes, par exemple à partir d’un stockage persistant.
Les graphes peuvent également être chargés à partir de triplets natifs stockés dans des triple stores accessibles via l’API dotNetRDF. Pour utiliser un triple store natif, vous devrez utiliser l’une des implémentations d’IStorageProvider situées dans l’espace de noms VDS.RDF.Storage. Les graphes peuvent être chargés à l’aide d’une surcharge appropriée de la méthode LoadGraph(), consultez l’intégration des triple stores pour plus de détails.
Alternativement, StoreGraphPersistenceWrapper est une classe enveloppe qui peut être placée autour de n’importe quelle instance IGraph et qui persiste toutes les modifications apportées lorsqu’elle est supprimée, sauf si vous les supprimez à l’aide de la méthode Discard().
using VDS.RDF;
using VDS.RDF.Storage;
public class StoreGraphExample
{
public static void Main(String[] args)
{
// Créez notre fournisseur de stockage - cet exemple utilise Virtuoso Universal Server
VirtuosoManager virtuoso = new VirtuosoManager("localhost", 1111, "DB", "nom d'utilisateur", "mot de passe");
// Chargez le graphe dans une instance de graphe ordinaire d'abord
Graph g = new Graph();
virtuoso.LoadGraph(g, new Uri("http://example.org/"));
// Placez ensuite le graphe dans une enveloppe
StoreGraphPersistenceWrapper wrapper = new StoreGraphPersistenceWrapper(virtuoso, g);
// Apportez maintenant des modifications à ce graphe comme vous le souhaitez...
// N'oubliez pas d'appeler Dispose() pour vous assurer que les modifications sont persistées lorsque vous avez fini
wrapper.Dispose();
}
}Il est également possible d’obtenir un graphe en effectuant une requête SPARQL vers un point d’accès SPARQL où les résultats de cette requête seront un graphe, c’est-à-dire une requête CONSTRUCT ou DESCRIBE.
using VDS.RDF;
using VDS.RDF.Query;
var httpClient = new System.Net.Http.HttpClient();
// Définissez d'abord un point d'accès SPARQL pour DBPedia
var endpoint = new SparqlQueryClient( httpClient, new Uri("http://dbpedia.org/sparql"));
// Ensuite, définissez notre requête
// Nous allons demander à DBPedia de décrire la première chose qu'elle trouve qui est une personne
String query = "DESCRIBE ?person WHERE {?person a <http://dbpedia.org/ontology/Person>} LIMIT 1";
// Obtenez le résultat
var g = await endpoint.QueryWithResultGraphAsync(query);
// Affichez le résultat
using (System.IO.StringWriter sw = new System.IO.StringWriter())
{
RdfXmlWriter rdfxmlwriter = new RdfXmlWriter();
rdfxmlwriter.Save(g, sw);
string rdfData = sw.ToString();
rdfData.Display();
}
<?xml version="1.0" encoding="utf-16"?>
<!DOCTYPE rdf:RDF [
<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
<!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
<!ENTITY xsd 'http://www.w3.org/2001/XMLSchema#'>
]>
<rdf:RDF xml:base="http://dbpedia.org/sparql" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:ns0="http://dbpedia.org/ontology/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="http://dbpedia.org/resource/Academy_of_the_Arabic_Language_in_Cairo">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Anastas">
<ns0:wikiPageDisambiguates rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<ns0:Person rdf:about="http://dbpedia.org/resource/Anastas_Al-Karmali">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Baghdad" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Beirut" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Belgium" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Biblical_exegesis" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Bikfaya" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Carmelite" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Carmelite_Fathers" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:1866_births" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:1947_deaths" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:Carmelites" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:Iraqi_Christians" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:Lebanese_Roman_Catholic_priests" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:Lebanese_people_of_Iraqi_descent" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Category:Linguists_from_Iraq" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Celibacy" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Central_Anatoli" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Egypt" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Ethiopian_Semitic_languages" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/French_language" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/French_literature" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Greek_language" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Hebrew" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/History_of_Christianity" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Iraq" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Iraq_Museum" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Iraq_National_Library" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Jesuit" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Kayseri" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Kitab_al-'Ayn" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Latin" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Lebanon" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Li%C3%A8ge" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/List_of_Arabic_dictionaries" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Lughat_Al_Arab" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Madrasat_Al-Aaba'_Al-Karmaliyin" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Madrasat_Al-Ittifaq_Al-Kathuliki" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Montpellier" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Order_of_the_Brothers_of_the_Blessed_Virgin_Mary_of_Mount_Carmel" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Persian_language" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Philosophy" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Sabaean_language" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Syria" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Syriac_language" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Theology" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Turkish_language" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/WWI" />
<ns1:hypernym rdf:resource="http://dbpedia.org/resource/Priest" xmlns:ns1="http://purl.org/linguistics/gold/" />
<ns2:sameAs rdf:resource="http://viaf.org/viaf/39370998" xmlns:ns2="http://schema.org/" />
<ns3:sameAs rdf:resource="http://ar.dbpedia.org/resource/%D8%A3%D9%86%D8%B3%D8%AA%D8%A7%D8%B3_%D8%A7%D9%84%D9%83%D8%B1%D9%85%D9%84%D9%8A" xmlns:ns3="http://www.w3.org/2002/07/owl#" />
<ns4:sameAs rdf:resource="http://arz.dbpedia.org/resource/%D8%A7%D9%86%D8%B3%D8%AA%D8%A7%D8%B3_%D8%A7%D9%84%D9%83%D8%B1%D9%85%D9%84%D9%89" xmlns:ns4="http://www.w3.org/2002/07/owl#" />
<ns5:sameAs rdf:resource="http://d-nb.info/gnd/118933655" xmlns:ns5="http://www.w3.org/2002/07/owl#" />
<ns6:sameAs rdf:resource="http://data.bibliotheken.nl/id/thes/p122941179" xmlns:ns6="http://www.w3.org/2002/07/owl#" />
<ns7:sameAs rdf:resource="http://fa.dbpedia.org/resource/%D8%A2%D9%86%D8%A7%D8%B3%D8%AA%D8%A7%D8%B3_%DA%A9%D8%B1%D9%85%D9%84%DB%8C" xmlns:ns7="http://www.w3.org/2002/07/owl#" />
<ns8:sameAs rdf:resource="http://rdf.freebase.com/ns/m.047qytk" xmlns:ns8="http://www.w3.org/2002/07/owl#" />
<ns9:sameAs rdf:resource="http://viaf.org/viaf/39370998" xmlns:ns9="http://www.w3.org/2002/07/owl#" />
<ns10:sameAs rdf:resource="http://www.wikidata.org/entity/Q4751824" xmlns:ns10="http://www.w3.org/2002/07/owl#" />
<ns11:sameAs rdf:resource="http://yago-knowledge.org/resource/Anastas_Al-Karmali" xmlns:ns11="http://www.w3.org/2002/07/owl#" />
<ns12:sameAs rdf:resource="https://global.dbpedia.org/id/4QhnH" xmlns:ns12="http://www.w3.org/2002/07/owl#" />
</ns0:Person>
<rdf:Description rdf:about="http://dbpedia.org/resource/Arab_Christians">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Iraq_National_Library_and_Archive">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Kitab_al-'Ayn">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/List_of_Iraqis">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Lughat_Al_Arab">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Minorities_in_Iraq">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/P%C3%A8re_Anastase-Marie_de_Saint_Elie">
<ns0:wikiPageRedirects rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Shabaks">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
<rdf:Description rdf:about="http://dbpedia.org/resource/Yousef_Ghanima">
<ns0:wikiPageWikiLink rdf:resource="http://dbpedia.org/resource/Anastas_Al-Karmali" />
</rdf:Description>
</rdf:RDF>
Le code précédent configure une connexion a DBpedia via SPARQL :
| Composant | Valeur | Explication |
|---|---|---|
| Endpoint URI | http://dbpedia.org/sparql |
Point d’acces au service de requêtes |
| HttpClient | Instance .NET | Gestion des connexions HTTP |
| DefaultGraphUri | http://dbpedia.org |
Graphe par defaut a interroger |
Fonctionnement :
Client C# --> HTTP POST --> DBpedia SPARQL Endpoint
<-- SPARQL Results (XML/JSON) <--
Configuration avancee possible :
Attention : Les endpoints publics ont souvent des limites de timeout (10-60 secondes) et des quotas de requêtes.
La méthode la plus courante pour enregistrer un graphe est de l’enregistrer dans un fichier, comme décrit dans l’écriture de RDF, mais vous pouvez également l’enregistrer dans d’autres formes de stockage persistant.
La façon la plus simple d’enregistrer un graphe dans un triple store consiste à utiliser la méthode SaveGraph() d’une implémentation d’IStorageProvider, consultez l’intégration des triple stores pour plus de détails.
Alternativement, vous pouvez utiliser la classe StoreGraphPersistenceWrapper décrite précédemment, car toutes les modifications apportées à celle-ci sont automatiquement enregistrées dans le Store (si votre Store le prend en charge).
Voici une liste partielle des implémentations concrètes d’IGraph fournies dans la bibliothèque :
| Classe | Description |
|---|---|
VDS.RDF.Graph |
Graphe en mémoire avec indexation des triplets |
VDS.RDF.NonIndexedGraph |
Graphe en mémoire sans indexation des triplets |
VDS.RDF.StoreGraphPersistenceWrapper |
Une enveloppe autour d’un autre graphe où les modifications sont persistées dans un Store en utilisant un IStorageProvider. |
VDS.RDF.ThreadSafeGraph |
Une enveloppe sûre pour les threads autour d’une autre instance de graphe |
Bien que RDF soit un modèle de données puissant capable de représenter n’importe quelle donnée que vous souhaitez encoder, la sérialisation RDF de certaines valeurs typées et de listes peut être quelque peu complexe. De plus, elles peuvent être difficiles à accéder et à manipuler à l’aide des API que nous vous avons montrées jusqu’à présent dans ce guide de l’utilisateur. Ce document explique certaines façons utiles dont la bibliothèque vous aide à travailler avec ces éléments de manière plus conviviale.
Pour les valeurs courantes telles que les entiers, les booléens, les dates, etc., RDF utilise les types de données du schéma XML. Ils peuvent être directement créés par un utilisateur en utilisant un code explicite comme celui-ci :
12345^^http://www.w3.org/2001/XMLSchema#integer| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
Le code précédent montre la verbosity des valeurs typees en RDF :
Problème :
Types XSD courants : - xsd:integer - Entiers - xsd:decimal - Decimaux - xsd:double - Flottants double precision - xsd:boolean - Booleans - xsd:dateTime - Dates et heures - xsd:string - Chaînes (par defaut)
Problème pedagogique : Le code RDF pur est très verbeux pour les valeurs typees. C’est pourquoi dotNetRDF fournit des extensions C# (section suivante).
Bien que cela soit relativement simple, cela peut être fastidieux à taper, en particulier si vous avez beaucoup de valeurs typées que vous souhaitez représenter. Pour faciliter l’encodage des valeurs typées en RDF, la bibliothèque propose plusieurs méthodes d’extension dans la classe VDS.RDF.LiteralExtensions, qui fournissent des méthodes ToLiteral() que vous pouvez appliquer à divers types .Net pour obtenir l’encodage RDF équivalent. Par exemple :
2026-06-02T05:08:57.635248+02:00^^http://www.w3.org/2001/XMLSchema#dateTime| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
Les méthodes d’extension .ToLiteral() simplifient drastiquement le code :
| Type C# | Méthode | Type RDF genere |
|---|---|---|
int |
(12345).ToLiteral(g) |
xsd:integer |
bool |
(true).ToLiteral(g) |
xsd:boolean |
double |
(3.14).ToLiteral(g) |
xsd:double |
DateTime |
DateTime.Now.ToLiteral(g) |
xsd:dateTime |
TimeSpan |
TimeSpan.FromHours(2).ToLiteral(g) |
xsd:duration |
string |
"text".ToLiteral(g) |
xsd:string ou plain |
Avantages : 1. Lisibilite : Code C# naturel 2. Type safety : Verification a la compilation 3. Formatage automatique : DateTime vers ISO 8601, etc.
Point cle : Ces extensions sont définies dans
VDS.RDF.LiteralExtensions.
Cela donne un code beaucoup plus lisible et, dans le cas de types tels que DateTime et TimeSpan, où les encodages RDF doivent être dans un format précis, cela élimine toute possibilité d’erreur de l’utilisateur lors de l’encodage des valeurs en tant que littéraux appropriés.
Pour décoder les valeurs à partir de RDF, vous pouvez utiliser l’espace de noms VDS.RDF.Nodes. Bien qu’il soit principalement utilisé en interne dans notre moteur SPARQL, il est également très utile pour l’utilisateur final. Cet espace de noms fournit principalement une méthode d’extension AsValuedNode(), qui vous renvoie une instance de VDS.RDF.Nodes.IValuedNode. Un IValuedNode est simplement un nœud qui a une valeur fortement typée associée et fournit plusieurs méthodes pour récupérer la valeur d’un nœud en tant que type .Net fortement typé. Par exemple :
Les listes RDF sont un moyen d’exprimer des listes en RDF, mais la sérialisation en triplets est quelque peu fastidieuse. Par exemple, le snippet Turtle suivant exprime une liste simple :
@prefix ex: <http://example.org/ns#> .
ex:subj ex:pred ( 1 2 3 ) .
Mais cela n’est qu’un sucre syntaxique pour les triplets suivants :
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ex: <http://example.org/ns#> .
ex:subj ex:pred _:b1 .
_:b1 rdf:first 1 .
_:b1 rdf:rest _:b2 .
_:b2 rdf:first 2 .
_:b2 rdf:rest _:b3 .
_:b3 rdf:first 3 .
_:b3 rdf:rest rdf:nil .
Comme vous pouvez probablement le comprendre, l’accès à cela uniquement à l’aide des API centrées sur les triplets que nous vous avons montrées dans le guide de l’utilisateur jusqu’à présent va être très difficile.
Pour atténuer ce problème, nous fournissons plusieurs méthodes dans la classe VDS.RDF.Extensions qui vous permettent de manipuler les listes RDF de manière conviviale.
L’accès à une liste nécessite une référence au graphe et à la racine de la liste, c’est-à-dire au nœud dans le graphe qui représente le premier élément de la liste. Tous les exemples suivants supposeront que le graphe RDF donné ci-dessus est les données utilisées et qu’il est disponible dans une variable g et que la racine de la liste est dans la variable root.
Vous pouvez récupérer une liste de plusieurs manières, la plus courante étant utilisée pour récupérer les éléments de votre collection, par exemple :
// Initialize g and root
IGraph g = new Graph();
INode root = null;
// RDF data in Turtle format
string rdfData = @"
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix ex: <http://example.org/ns#> .
ex:subj ex:pred _:b1 .
_:b1 rdf:first 1 .
_:b1 rdf:rest _:b2 .
_:b2 rdf:first 2 .
_:b2 rdf:rest _:b3 .
_:b3 rdf:first 3 .
_:b3 rdf:rest rdf:nil .
";
// Parse RDF data
TurtleParser parser = new TurtleParser();
parser.Load(g, new StringReader(rdfData));
// Get the root node
IUriNode predicate = g.CreateUriNode("ex:pred");
Triple rootTriple = g.GetTriplesWithPredicate(predicate).FirstOrDefault();
if (rootTriple != null)
{
root = rootTriple.Object;
}
if (root != null)
{
// Get the nodes for 1, 2, and 3
var listItems = g.GetListItems(root).ToList();
foreach (var node in listItems)
{
Console.WriteLine(node);
}
}
else
{
Console.WriteLine("Root node not found.");
}
// Get the nodes for 1, 2, and 3
IEnumerable<INode> ns = g.GetListItems(root);1^^http://www.w3.org/2001/XMLSchema#integer
2^^http://www.w3.org/2001/XMLSchema#integer
3^^http://www.w3.org/2001/XMLSchema#integer
Le code suivant créé une liste RDF en Turtle :
@prefix : <http://example.org/> .
_:root rdf:first 1 ;
rdf:rest _:b1 .
_:b1 rdf:first 2 ;
rdf:rest _:b2 .
_:b2 rdf:first 3 ;
rdf:rest rdf:nil .
Structure conceptuelle :
root -> [1 | rest] -> [2 | rest] -> [3 | rest] -> nil
| Élément | Type | Signification |
|---|---|---|
rdf:first |
Predicat | Valeur de l’élément courant |
rdf:rest |
Predicat | Lien vers l’élément suivant |
rdf:nil |
Ressource | Fin de liste |
| Noeuds blancs | _:b1, _:b2 |
Noeuds intermediaires |
Comparaison : Equivalent aux listes chainees en programmation, mais encodees en triplets RDF.
Comme vous pouvez probablement le comprendre, l’accès à cela uniquement à l’aide des API centrées sur les triplets que nous vous avons montrées dans le guide de l’utilisateur jusqu’à présent va être très difficile.
Pour atténuer ce problème, nous fournissons plusieurs méthodes dans la classe VDS.RDF.Extensions qui vous permettent de manipuler les listes RDF de manière conviviale.
L’accès à une liste nécessite une référence au graphe et à la racine de la liste, c’est-à-dire au nœud dans le graphe qui représente le premier élément de la liste. Tous les exemples suivants supposeront que le graphe RDF donné ci-dessus est les données utilisées et qu’il est disponible dans une variable g et que la racine de la liste est dans la variable root.
Vous pouvez récupérer une liste de plusieurs manières, la plus courante étant utilisée pour récupérer les éléments de votre collection, par exemple :
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
Cette méthode abstrait la structure interne de la liste RDF :
| Méthode | Retourne | Cas d’usage |
|---|---|---|
| GetListItems(root) | [1, 2, 3] (valeurs) |
Recuperer le contenu |
| GetListNodes(root) | [_:b1, _:b2, _:b3] |
Manipulation structure |
| GetListAsTriples(root) | Triplets rdf:first/rest |
Inspection bas niveau |
Exemple de sortie :
Abstraction : Vous n’avez pas besoin de naviguer manuellement les predicats
rdf:firstetrdf:rest.
Dans certains cas, vous souhaiterez peut-être récupérer les nœuds intermédiaires de la liste plutôt que les éléments eux-mêmes, par exemple :
| index | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
| Méthode | Contenu retourne | Exemple |
|---|---|---|
| GetListItems() | Valeurs des rdf:first |
1, 2, 3 |
| GetListNodes() | Noeuds intermediaires | _:b1, _:b2, _:b3 |
Pourquoi GetListNodes() est utile ? :
Ce code ajoute un index a chaque noeud intermediaire de la liste.
Ou vous souhaiterez peut-être obtenir tous les triplets qui composent la liste :
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
False
Cette méthode retourne tous les triplets constituant la liste :
Sortie attendue :
_:root rdf:first "1"^^xsd:integer .
_:root rdf:rest _:b1 .
_:b1 rdf:first "2"^^xsd:integer .
_:b1 rdf:rest _:b2 .
_:b2 rdf:first "3"^^xsd:integer .
_:b2 rdf:rest rdf:nil .
Cas d’usage : - Debugging de listes malformees - Export vers un autre graphe - Analyse de structure
Nous fournissons également des méthodes qui vous permettent d’asserter/retracter facilement une liste. L’assertion d’une liste nécessite une énumération de nœuds à utiliser comme éléments des listes. Vous pouvez utiliser soit un nœud existant comme racine de la liste, soit faire générer une nouvelle racine de liste pour vous, par exemple :
VDS.RDF.Graph| UriFactory |
|
| InternUris |
|
[ http://example.org/ns#subj , http://example.org/ns#pred , _:b1, _:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 1^^http://www.w3.org/2001/XMLSchema#integer, _:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2, _:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer, _:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3, _:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer, _:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil, _:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean, _:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos4, _:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean, _:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil ]
| ObjectNodes |
|
| Count |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
1 |
VDS.RDF.LiteralNode |
|
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ http://example.org/ns#pred, http://www.w3.org/1999/02/22-rdf-syntax-ns#first, http://www.w3.org/1999/02/22-rdf-syntax-ns#rest ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
1 |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ http://example.org/ns#subj, _:b1, _:b2, _:b3, _:autos3, _:autos4 ]
| Count |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
1 |
VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
11
0
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#subj |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #subj |
| Scheme | http |
| OriginalString | http://example.org/ns#subj |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/ns#pred
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#pred |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #pred |
| Scheme | http |
| OriginalString | http://example.org/ns#pred |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri | http://example.org/ns#subj |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://example.org/ns#pred
| Uri | http://example.org/ns#pred |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b1
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 1^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value | 1 |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#integer |
| NodeType | Literal |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b2
| InternalID | b2 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b2 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value | 2 |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#integer |
| NodeType | Literal |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b2 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b3
| InternalID | b3 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b3 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value | 3 |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#integer |
| NodeType | Literal |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b3 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos3 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value | true |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#boolean |
| NodeType | Literal |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos4
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos3 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:autos4
| InternalID | autos4 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos4 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value | false |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#boolean |
| NodeType | Literal |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos4 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
False
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/ns#pred
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#subj |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #subj |
| Scheme | http |
| OriginalString | http://example.org/ns#subj |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/ns#pred
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#pred |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #pred |
| Scheme | http |
| OriginalString | http://example.org/ns#pred |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 1^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos4
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/ns#pred
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
VDS.RDF.NamespaceMapper
| Prefixes |
|
<null>
<null>
False
False
La méthode AssertList() créé une liste complete en une seule opération :
| Paramètre | Type | Description |
|---|---|---|
items |
List<INode> |
Éléments a inclure |
| Retour | INode |
Racine de la liste (a conserver) |
Ce qui est créé automatiquement : 1. Noeuds blancs intermediaires (_:b1, _:b2, etc.) 2. Triplets rdf:first pour chaque valeur 3. Triplets rdf:rest pour le chainage 4. Terminaison avec rdf:nil
Triplets generes :
_:root rdf:first true .
_:root rdf:rest _:b1 .
_:b1 rdf:first false .
_:b1 rdf:rest rdf:nil .
Important : Conserver la reference
rootpour acceder a la liste ulterieurement.
Le retrait d’une liste est beaucoup plus simple si nous connaissons la racine de la liste :
VDS.RDF.Graph| UriFactory |
|
| InternUris |
|
[ http://example.org/ns#subj , http://example.org/ns#pred , _:b1, _:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean, _:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos4, _:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean, _:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil ]
| ObjectNodes |
|
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
1 |
VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ http://example.org/ns#pred, http://www.w3.org/1999/02/22-rdf-syntax-ns#first, http://www.w3.org/1999/02/22-rdf-syntax-ns#rest ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
1 |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ http://example.org/ns#subj, _:autos3, _:autos4 ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
1 |
VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
5
0
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#subj |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #subj |
| Scheme | http |
| OriginalString | http://example.org/ns#subj |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/ns#pred
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#pred |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #pred |
| Scheme | http |
| OriginalString | http://example.org/ns#pred |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri | http://example.org/ns#subj |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://example.org/ns#pred
| Uri | http://example.org/ns#pred |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b1
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos3 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value | true |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#boolean |
| NodeType | Literal |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos4
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos3 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:autos4
| InternalID | autos4 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos4 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value | false |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#boolean |
| NodeType | Literal |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos4 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
False
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/ns#pred
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#subj |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #subj |
| Scheme | http |
| OriginalString | http://example.org/ns#subj |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/ns#pred
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#pred |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #pred |
| Scheme | http |
| OriginalString | http://example.org/ns#pred |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos4
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos4 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/ns#pred
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos4
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
VDS.RDF.NamespaceMapper
| Prefixes |
|
<null>
<null>
False
False
RetractList() supprime recursivement tous les triplets de la liste :
| Méthode | Effet | Triplets supprimes |
|---|---|---|
RetractList(root) |
Supprime la liste entiere | Tous les rdf:first et rdf:rest |
Retract(triple) |
Supprime un triplet | Un seul |
Comportement : 1. Suit recursivement les rdf:rest 2. Supprime chaque triplet rdf:first et rdf:rest 3. S’arrete a rdf:nil
Attention : Si plusieurs listes partagent des noeuds (rare mais possible), la suppression peut affecter plusieurs listes.
Vous pouvez ajouter et supprimer des éléments des listes à l’aide de méthodes pratiques également. Pour ajouter de nouveaux éléments à la fin d’une liste, vous pouvez faire ce qui suit :
VDS.RDF.Graph| UriFactory |
|
| InternUris |
|
[ http://example.org/ns#subj , http://example.org/ns#pred , _:b1, _:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 1^^http://www.w3.org/2001/XMLSchema#integer, _:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2, _:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer, _:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3, _:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer, _:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos5, _:autos5 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean, _:autos5 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos6, _:autos6 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean, _:autos6 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil ]
| ObjectNodes |
|
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
1 |
VDS.RDF.LiteralNode |
|
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ http://example.org/ns#pred, http://www.w3.org/1999/02/22-rdf-syntax-ns#first, http://www.w3.org/1999/02/22-rdf-syntax-ns#rest ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
1 |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ http://example.org/ns#subj, _:b1, _:b2, _:b3, _:autos5, _:autos6 ]
| Count |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| IsReadOnly |
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| (values) |
EffectiveType |
NumericType |
NaN |
NodeType |
Uri |
1 |
VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
[ ]
| Count |
|
| IsReadOnly |
|
| (values) | (empty) |
11
0
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#subj |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #subj |
| Scheme | http |
| OriginalString | http://example.org/ns#subj |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/ns#pred
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#pred |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #pred |
| Scheme | http |
| OriginalString | http://example.org/ns#pred |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri | http://example.org/ns#subj |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://example.org/ns#pred
| Uri | http://example.org/ns#pred |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b1
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 1^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value | 1 |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#integer |
| NodeType | Literal |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b1 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b2
| InternalID | b2 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b2 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value | 2 |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#integer |
| NodeType | Literal |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b2 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:b3
| InternalID | b3 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b3 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value | 3 |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#integer |
| NodeType | Literal |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos5
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | b3 |
| HasAutoAssignedID | False |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:autos5
| InternalID | autos5 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:autos5 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos5 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value | true |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#boolean |
| NodeType | Literal |
False
_:autos5 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos6
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos5 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
_:autos6
| InternalID | autos6 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
False
_:autos6 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos6 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value | false |
| Language | |
| DataType | http://www.w3.org/2001/XMLSchema#boolean |
| NodeType | Literal |
False
_:autos6 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
<null>
| index | type | value | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID | autos6 |
| HasAutoAssignedID | True |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| EffectiveType | |
| NumericType | NaN |
| NodeType | Uri |
False
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Subject |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/ns#pred
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#subj |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #subj |
| Scheme | http |
| OriginalString | http://example.org/ns#subj |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://example.org/ns#pred
| Uri |
|
| AbsolutePath | /ns |
| AbsoluteUri | http://example.org/ns#pred |
| LocalPath | /ns |
| Authority | example.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /ns |
| Segments | [ /, ns ] |
| IsUnc | False |
| Host | example.org |
| Port | 80 |
| Query | |
| Fragment | #pred |
| Scheme | http |
| OriginalString | http://example.org/ns#pred |
| DnsSafeHost | example.org |
| IdnHost | example.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 1^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:b1 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b2
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 2^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:b2 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:b3
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , 3^^http://www.w3.org/2001/XMLSchema#integer
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#integer |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #integer |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#integer |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:b3 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos5
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:autos5 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , true^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos5 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , _:autos6
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
False
_:autos6 , http://www.w3.org/1999/02/22-rdf-syntax-ns#first , false^^http://www.w3.org/2001/XMLSchema#boolean
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #first |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#first |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath | /2001/XMLSchema |
| AbsoluteUri | http://www.w3.org/2001/XMLSchema#boolean |
| LocalPath | /2001/XMLSchema |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /2001/XMLSchema |
| Segments | [ /, 2001/, XMLSchema ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #boolean |
| Scheme | http |
| OriginalString | http://www.w3.org/2001/XMLSchema#boolean |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
_:autos6 , http://www.w3.org/1999/02/22-rdf-syntax-ns#rest , http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Subject |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
<null>
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.BlankNode |
|
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #rest |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#rest |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath | /1999/02/22-rdf-syntax-ns |
| AbsoluteUri | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| LocalPath | /1999/02/22-rdf-syntax-ns |
| Authority | www.w3.org |
| HostNameType | Dns |
| IsDefaultPort | True |
| IsFile | False |
| IsLoopback | False |
| PathAndQuery | /1999/02/22-rdf-syntax-ns |
| Segments | [ /, 1999/, 02/, 22-rdf-syntax-ns ] |
| IsUnc | False |
| Host | www.w3.org |
| Port | 80 |
| Query | |
| Fragment | #nil |
| Scheme | http |
| OriginalString | http://www.w3.org/1999/02/22-rdf-syntax-ns#nil |
| DnsSafeHost | www.w3.org |
| IdnHost | www.w3.org |
| IsAbsoluteUri | True |
| UserEscaped | False |
| UserInfo |
False
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
| index | type | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | VDS.RDF.UriNode |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://example.org/ns#pred
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b1
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
1^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b2
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
2^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:b3
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
3^^http://www.w3.org/2001/XMLSchema#integer
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos5
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
true^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
_:autos6
| InternalID |
|
| HasAutoAssignedID |
|
| EffectiveType |
|
| NumericType | NaN |
| NodeType | Blank |
false^^http://www.w3.org/2001/XMLSchema#boolean
| Value |
|
||||||||||||||||||||||||||||||||||||||||||||
| Language |
|
||||||||||||||||||||||||||||||||||||||||||||
| DataType |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
VDS.RDF.NamespaceMapper
| Prefixes |
|
<null>
<null>
False
False
AddToList() ajoute des éléments a la fin d’une liste RDF :
| Avant | Après ajout de [true, false] |
|---|---|
[1, 2, 3] |
[1, 2, 3, true, false] |
Mécanisme : 1. Trouve le dernier noeud (celui qui pointe vers rdf:nil) 2. Remplace dernierNoeud rdf:rest rdf:nil par dernierNoeud rdf:rest nouveauNoeud 3. Construit la nouvelle sous-liste 4. Termine par rdf:nil
Performance : O(n) ou n est la longueur de la liste (doit parcourir jusqu’a la fin).
Pour supprimer des éléments d’une liste, indépendamment de leur position dans la liste, faites ce qui suit :
RemoveFromList() supprime toutes les occurrences d’éléments specifies :
| Liste initiale | Éléments a supprimer | Résultat |
|---|---|---|
[1, 2, 3, 2, 1] |
[1, 2] |
[3] |
[1, 2, 3] |
[4] |
[1, 2, 3] (inchange) |
Comportement important : - Supprime TOUTES les occurrences (pas seulement la première) - Preserve l’ordre des éléments restants - Reconstruit les liens rdf:rest
Note : Si vous voulez supprimer seulement la première occurrence, vous devez parcourir manuellement avec
GetListNodes().
Notez que si un élément existe plusieurs fois dans la liste, toutes les occurrences de celui-ci sont supprimées par cette méthode.
Les Triple Stores dans dotNetRDF sont utilisés pour représenter des collections de graphes et vous permettent de travailler avec de plus grandes quantités de RDF facilement. Un Triple Store peut être une représentation en mémoire des graphes ou une interface vers un magasin sous-jacent réel.
Les propriétés de base d’un Triple Store sont les suivantes :
Vous pouvez accéder à un graphe spécifique dans le Triple Store en utilisant l’indexeur avec l’URI du graphe.
Le Triple Store propose également des méthodes pour vérifier l’existence d’un graphe, ajouter des graphes, les supprimer, et exécuter des requêtes.
Il existe deux types de Triple Stores :
IGraph pour récupérer des triplets.ExecuteQuery prenant une requête SPARQL en chaîne.Pour charger et enregistrer des Triple Stores, vous pouvez utiliser différents formats de jeu de données RDF tels que TriG, TriX et NQuads. Vous pouvez utiliser les classes TriGParser et TriGWriter pour charger et enregistrer des stores au format TriG, par exemple.
En résumé, les Triple Stores permettent de travailler avec des collections de graphes RDF. Ils offrent des fonctionnalités pour manipuler les graphes, exécuter des requêtes et charger/enregistrer des stores dans différents formats de jeu de données RDF.
Voici un exemple de code pour charger un Triple Store à partir d’un fichier TriG et l’enregistrer dans un autre fichier TriG :
using System;
using VDS.RDF;
using VDS.RDF.Storage;
public class PersistentTripleStoreExample
{
public static void Main(string[] args)
{
// Créer une connexion à 4store dans cet exemple
FourStoreConnector store = new FourStoreConnector("http://example.com:8080/");
PersistentTripleStore tripleStore = new PersistentTripleStore(store);
// Vérifier si un graphe existe dans le store
// Si le graphe existe dans le store sous-jacent, il sera chargé en mémoire
if (tripleStore.HasGraph(new Uri("http://example.org/someGraph")))
{
// Obtenir le graphe de la vue en mémoire (notez que s'il change dans le store sous-jacent entre-temps, vous ne verrez pas ces changements)
Graph g = tripleStore.Graph(new Uri("http://example.org/someGraph"));
// Faire quelque chose avec le graphe...
}
// Si vous ajoutez un graphe au store, il sera ajouté uniquement à l'état en mémoire initialement
Graph toAdd = new Graph();
toAdd.LoadFromUri(new Uri("http://example.org/newGraph"));
tripleStore.Add(toAdd);
// Pour vous assurer que le nouveau graphe est enregistré, appelez Flush()
tripleStore.Flush();
// Vous pouvez également utiliser cette classe pour effectuer des requêtes/mises à jour sur le store sous-jacent
// Remarque - Si vous avez apporté des modifications à l'état en mémoire du store, effectuer une requête/mise à jour provoquera une erreur à moins que vous n'ayez
// persisté ces modifications
// Utilisez Flush() ou Discard() pour vous assurer que l'état du store est cohérent pour l'interrogation
// Effectuer une requête sur le store
// Vous devriez obtenir un SparqlResultSet à partir d'une requête SELECT
object results = tripleStore.ExecuteQuery("SELECT * WHERE {?s ?p ?o}");
if (results is SparqlResultSet)
{
// Afficher les résultats
SparqlResultSet resultSet = (SparqlResultSet)results;
foreach (SparqlResult result in resultSet)
{
Console.WriteLine(result.ToString());
}
}
}
}Ce qui précède démontre comment créer, charger, manipuler et interroger un triple store à l’aide de dotNetRDF. Les triple stores offrent un moyen puissant et flexible de travailler avec de grandes quantités de données RDF, rendant la gestion et l’interrogation de graphes RDF plus efficaces et plus pratiques.
Les listes RDF sont des structures chainees encodees en triplets. dotNetRDF fournit une abstraction complete :
| Opération | Méthode | Complexite |
|---|---|---|
| Lire valeurs | GetListItems() |
O(n) |
| Lire noeuds | GetListNodes() |
O(n) |
| Inspecter triplets | GetListAsTriples() |
O(n) |
| Créer liste | AssertList() |
O(n) |
| Ajouter éléments | AddToList() |
O(n) |
| Supprimer éléments | RemoveFromList() |
O(n) |
| Detruire liste | RetractList() |
O(n) |
Representations equivalentes :
| Format | Representation |
|---|---|
| Conceptuel | [1, 2, 3] |
| Triplets RDF | _:r rdf:first 1; rdf:rest _:b1. _:b1 rdf:first 2; ... |
| Code C# | g.AssertList(new List<INode>{...}) |
Quand utiliser les listes RDF ? : Collections ordonnees dans des ontologies, sequences d’étapes, chemins, etc. Pour des collections non ordonnees, preferer
rdf:Bagourdf:Set.
SPARQL est un langage de requête pour les données RDF. Il permet aux utilisateurs d’interroger les données RDF de manière flexible et puissante. Les requêtes SPARQL peuvent extraire des données de différents graphes RDF, fusionner des informations provenant de différentes sources et effectuer des opérations complexes sur les données. SPARQL est le langage de requête standard pour le Web sémantique et peut être utilisé pour interroger de grandes quantités de données RDF.
using System;
using VDS.RDF.Query.Builder;
string x = "x";
var queryBuilder = QueryBuilder
.Select(new string[] { x })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject(x)
.PredicateUri(new Uri("http://www.w3.org/2001/vcard-rdf/3.0#FN"))
.Object("John Smith");
});
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}SELECT ?x WHERE
{ ?x <http://www.w3.org/2001/vcard-rdf/3.0#FN> ?John Smith . }
SPARQL est le langage de requête standard pour RDF (equivalent de SQL pour les bases relationnelles).
QueryBuilder : API fluide C# pour construire des requêtes SPARQL programmatiquement.
| Approche | Exemple | Avantage |
|---|---|---|
| Chaîne brute | "SELECT ?x WHERE { ?x ?y ?z }" |
Simple pour requêtes fixes |
| QueryBuilder | QueryBuilder.Select("x").Where(...) |
Type safety, composition dynamique |
Structure de base d’une requête SELECT :
SELECT ?variable
WHERE {
?subject ?predicate ?object .
}
Le QueryBuilder permet de construire cette structure en C# avec IntelliSense et validation.
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("vcard", new Uri("http://www.w3.org/2001/vcard-rdf/3.0#"));
string y = "y";
var givenName = new SparqlVariable("givenName");
var queryBuilder =
QueryBuilder
.Select(new SparqlVariable[] { givenName })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject(y)
.PredicateUri("vcard:Family")
.Object("Smith");
triplePatternBuilder
.Subject(y)
.PredicateUri("vcard:Given")
.Object(givenName);
});
queryBuilder.Prefixes = prefixes;
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>
SELECT ?givenName WHERE
{
?y vcard:Family ?Smith .
?y vcard:Given ?givenName .
}
Les prefixes abregent les URIs longues :
| Sans prefix | Avec prefix |
|---|---|
<http://www.w3.org/2001/vcard-rdf/3.0#FN> |
vcard:FN |
Declaration de prefixes :
PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>
SELECT ?y ?givenName
WHERE {
?y vcard:Family "Smith" .
?y vcard:Given ?givenName .
}
Equivalent C# avec QueryBuilder :
Prefixes standards :
rdf:,rdfs:,xsd:,owl:sont inclus automatiquement.
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("info", new Uri("http://somewhere/peopleInfo#"));
string resource = "resource";
string age = "age";
var queryBuilder =
QueryBuilder
.Select(new string[] { resource })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject(resource)
.PredicateUri($"info:{age}")
.Object(age);
})
.Filter((builder) => builder.Variable(age) > 24);
queryBuilder.Prefixes = prefixes;
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}PREFIX info: <http://somewhere/peopleInfo#>
SELECT ?resource WHERE
{
?resource info:age ?age .
FILTER(?age > 24 ) .
}
Les filtres restreignent les résultats selon des conditions :
| Opérateur | Exemple SPARQL | Exemple QueryBuilder |
|---|---|---|
| > | FILTER(?age > 24) |
.Filter(age > 24) |
| < | FILTER(?price < 100) |
.Filter(price < 100) |
| >= | FILTER(?score >= 50) |
.Filter(score >= 50) |
| = | FILTER(?count = 10) |
.Filter(count == 10) |
Requête de l’exemple :
SELECT ?resource
WHERE {
?resource info:age ?age .
FILTER(?age > 24)
}
Signification : “Sélectionner toutes les ressources dont l’age est superieur a 24”.
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("vcard", new Uri("http://www.w3.org/2001/vcard-rdf/3.0#"));
var givenName = new SparqlVariable("givenName");
var queryBuilder =
QueryBuilder
.Select(new SparqlVariable[] { givenName })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject("y")
.PredicateUri("vcard:Given")
.Object(givenName);
})
.Filter((builder) => builder.Regex(builder.Variable("givenName"), "sarah", "i"));
queryBuilder.Prefixes = prefixes;
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>
SELECT ?givenName WHERE
{
?y vcard:Given ?givenName .
FILTER(REGEX(?givenName,"sarah","i")) .
}
REGEX permet de filtrer sur des patterns de texte :
| Fonction | Syntaxe | Exemple |
|---|---|---|
| REGEX | REGEX(?var, "pattern") |
Correspondance pattern |
| REGEX avec flags | REGEX(?var, "pattern", "i") |
i = case insensitive |
Flags disponibles : - i : Insensible a la casse - m : Multiline mode - s : Dot matches newline
Exemple de l’exercice :
FILTER(REGEX(?givenName, "^ali", "i"))
Signification : “Prenom commence par ‘ali’, ‘Ali’, ‘ALI’, etc.”
Pattern ^ali : - ^ : Debut de chaîne - ali : Lettres exactes - Flag i : Ignore la casse
Cas d’usage : Recherche de noms, filtrage d’URIs, validation de formats.
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("info", new Uri("http://somewhere/peopleInfo#"));
prefixes.AddNamespace("vcard", new Uri("http://www.w3.org/2001/vcard-rdf/3.0#"));
string name = "name";
string age = "age";
string person = "person";
var queryBuilder =
QueryBuilder
.Select(new string[] { name, age })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject(person)
.PredicateUri("vcard:FN")
.Object(name);
})
.Optional(
(optionalBuilder) =>
{
optionalBuilder.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject(person)
.PredicateUri($"info:{age}")
.Object(age);
});
optionalBuilder.Filter((b) => b.Variable(age) > 42);
});
queryBuilder.Prefixes = prefixes;
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}PREFIX info: <http://somewhere/peopleInfo#>
PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>
SELECT ?name ?age WHERE
{
?person vcard:FN ?name .
OPTIONAL {
?person info:age ?age .
FILTER(?age > 42 ) .
}
}
OPTIONAL permet de recuperer des informations même si elles n’existent pas :
| Sans OPTIONAL | Avec OPTIONAL |
|---|---|
| Ressource sans age : exclue | Ressource sans age : incluse (age = null) |
Requête de l’exemple :
SELECT ?resource ?age
WHERE {
?resource info:name ?name .
OPTIONAL {
?resource info:age ?age .
FILTER(?age > 24)
}
}
Comportement : - Toutes les ressources avec un nom sont retournees - Si elles ont un age > 24, il est retourne - Si elles n’ont pas d’age, ?age est null
Analogie SQL : Equivalent a un
LEFT JOINen SQL.
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("foaf", new Uri("http://xmlns.com/foaf/0.1/"));
prefixes.AddNamespace("vcard", new Uri("http://www.w3.org/2001/vcard-rdf/3.0#"));
string name = "name";
var queryBuilder =
QueryBuilder
.Select(new string[] { name });
queryBuilder
.Union(
(unionBuilder) =>
{
unionBuilder.Where(
(tripleBuilder) =>
{
tripleBuilder
.Subject<IBlankNode>("abc")
.PredicateUri($"foaf:{name}")
.Object(name);
});
},
(unionBuilder) =>
{
unionBuilder.Where(
c =>
{
c
.Subject<IBlankNode>("abc")
.PredicateUri("vcard:FN")
.Object(name);
});
});
queryBuilder.Prefixes = prefixes;
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX vcard: <http://www.w3.org/2001/vcard-rdf/3.0#>
SELECT ?name WHERE
{ { _:abc foaf:name ?name . }
UNION
{ _:abc vcard:FN ?name . } }
UNION combine des patterns alternatifs :
WHERE {
{ ?person foaf:name ?name }
UNION
{ ?person foaf:mbox ?mbox }
}
Signification : “Sélectionner les personnes qui ont soit un nom soit un email”.
| Cas | Résultat |
|---|---|
| Personne avec nom seulement | Incluse |
| Personne avec email seulement | Incluse |
| Personne avec les deux | Incluse (2 résultats) |
| Personne sans nom ni email | Exclue |
Différence avec OPTIONAL :
| OPTIONAL | UNION |
|---|---|
| Pattern principal + extension optionnelle | Patterns alternatifs |
| Toujours 1 résultat par ressource | Peut generer plusieurs résultats |
Cas d’usage : Recherche flexible, fusion de sources heterogenes.
var prefixes = new NamespaceMapper(true);
prefixes.AddNamespace("foaf", new Uri("http://xmlns.com/foaf/0.1/"));
string name = "name";
var queryBuilder =
QueryBuilder
.Select(new string[] { name })
.Where(
(triplePatternBuilder) =>
{
triplePatternBuilder
.Subject("x")
.PredicateUri($"foaf:{name}")
.Object(name);
})
.OrderBy(name);
queryBuilder.Prefixes = prefixes;
using (var sw = new System.IO.StringWriter())
{
sw.WriteLine(queryBuilder.BuildQuery().ToString());
var result = sw.ToString();
return result;
}PREFIX foaf: <http://xmlns.com/foaf/0.1/>
SELECT ?name WHERE
{ ?x foaf:name ?name . }
ORDER BY ASC(?name)
ORDER BY trie les résultats selon une variable :
| Direction | Syntaxe | Exemple |
|---|---|---|
| Ascendant | ORDER BY ?var |
A->Z, 1->9 |
| Descendant | ORDER BY DESC(?var) |
Z->A, 9->1 |
Requête de l’exemple :
SELECT ?name
WHERE {
?x foaf:name ?name .
}
ORDER BY ?name
Résultat : Noms tries alphabetiquement.
Tri multiple :
ORDER BY DESC(?age) ?name
Signification : Trier par age decroissant, puis par nom croissant (pour ages identiques).
Note : Le tri s’applique après le filtrage et la sélection.
Ces exemples montrent comment construire et afficher des requêtes SPARQL en utilisant dotNetRDF. Vous pouvez les exécuter dans un notebook pour voir les requêtes générées.
Le QueryBuilder offre une API fluide pour construire des requêtes SPARQL complexes :
| Clause SPARQL | Méthode QueryBuilder | Fonction |
|---|---|---|
| SELECT | .Select(variables) |
Variables a retourner |
| WHERE | .Where(pattern) |
Pattern de triplets |
| FILTER | .Filter(condition) |
Conditions de filtrage |
| OPTIONAL | .Optional(pattern) |
Patterns optionnels |
| UNION | .Union(pattern1, pattern2) |
Patterns alternatifs |
| ORDER BY | .OrderBy(variable) |
Tri des résultats |
Avantages du QueryBuilder : - Type safety : Erreurs detectees a la compilation - IntelliSense : Autocompletion dans l’IDE - Composition dynamique : Construction conditionnelle de requêtes - Lisibilite : Code plus clair que les chaînes SPARQL
Exemple de composition dynamique :
Nous allons maintenant utiliser ces requêtes pour interroger DBpedia.
RDF.Net peut être utilisé pour interroger DBpedia en utilisant SPARQL. Il offre des fonctionnalités pour créer des requêtes SPARQL et pour parser les résultats des requêtes. De plus, avec RDF.Net, les développeurs peuvent manipuler les données de DBpedia comme s’il s’agissait de graphes RDF locaux.
DBpedia est un projet qui extrait et structure le contenu de Wikipedia afin de le rendre accessible et réutilisable. Il s’agit d’un vaste graphe de connaissances qui représente une grande partie des informations contenues dans Wikipedia sous une forme structurée et interrogeable. DBpedia fournit un point d’accès SPARQL, qui est une interface permettant d’interroger les données de DBpedia à l’aide de la langue SPARQL. RDF.Net nous permet d’interroger ce point d’accès facilement et efficacement.
Les points d’accès SPARQL à distance peuvent être interrogés à l’aide de la classe SparqlRemoteEndpoint. Cette classe est une enveloppe autour d’un point d’accès à distance qui envoie des requêtes au point d’accès, puis transforme la réponse en un SparqlResultSet ou un IGraph, selon le cas.
Un point d’accès à distance est une combinaison d’un URI de point d’accès et d’un URI de graphe par défaut facultatif. SparqlRemoteEndpoint propose des méthodes spécifiques fortement typées pour réaliser des requêtes, ce qui signifie que vous n’avez pas besoin de vérifier le type et de couler le résultat. La méthode QueryWithResultGraph(String sparqlQuery) peut être utilisée pour faire une requête CONSTRUCT ou DESCRIBE, tandis que la méthode QueryWithResultSet(String sparqlQuery) peut être utilisée pour faire des requêtes SELECT et ASK. Vous pouvez également utiliser la méthode QueryRaw(String sparqlQuery, out String ctype) si vous souhaitez obtenir le flux de réponse brut du point d’accès et le traiter vous-même.
Un point d’accès à distance peut être utilisé comme suit :
using System;
using VDS.RDF;
using VDS.RDF.Query;
public static void ExecuteAndDisplaySparqlQuery(SparqlRemoteEndpoint endpoint, string query, int resultLimit = 10)
{
try
{
SparqlResultSet results = endpoint.QueryWithResultSet(query);
DisplaySparqlResultSet(results, resultLimit);
}
catch (Exception ex)
{
Console.WriteLine($"Erreur lors de l'exécution de la requête SPARQL : {ex.Message}");
}
}
public static void DisplaySparqlResultSet(SparqlResultSet results, int resultLimit)
{
if (results != null && results.Count > 0)
{
int count = 0;
foreach (var result in results)
{
Console.WriteLine(result.ToString());
count++;
if (count >= resultLimit)
{
Console.WriteLine($"...affiché {resultLimit} résultats sur {results.Count}.");
break;
}
}
}
else
{
Console.WriteLine("Aucun résultat trouvé.");
}
}
public static void ExecuteAndDisplaySparqlDescribe(SparqlRemoteEndpoint endpoint, string query)
{
try
{
IGraph graph = endpoint.QueryWithResultGraph(query);
DisplayGraphTriples(graph);
}
catch (Exception ex)
{
Console.WriteLine($"Erreur lors de l'exécution de la requête SPARQL DESCRIBE : {ex.Message}");
}
}
public static void DisplayGraphTriples(IGraph graph, int resultLimit = 10)
{
if (graph != null && graph.Triples.Count > 0)
{
int count = 0;
foreach (var triple in graph.Triples)
{
Console.WriteLine(triple.ToString());
count++;
if (count >= resultLimit)
{
Console.WriteLine($"...affiché {resultLimit} triples sur {graph.Triples.Count}.");
break;
}
}
}
else
{
Console.WriteLine("Aucun triple trouvé.");
}
}
SparqlRemoteEndpoint endpoint = new SparqlRemoteEndpoint(new Uri("http://dbpedia.org/sparql"), "http://dbpedia.org");
// Exemple de requête SELECT
string selectQuery = "SELECT DISTINCT ?Concept WHERE {[] a ?Concept}";
Console.WriteLine("Résultats de la requête SELECT :");
ExecuteAndDisplaySparqlQuery(endpoint, selectQuery);
// Exemple de requête DESCRIBE
string describeQuery = "DESCRIBE <http://dbpedia.org/resource/Albert_Einstein>";
Console.WriteLine("\nRésultats de la requête DESCRIBE :");
ExecuteAndDisplaySparqlDescribe(endpoint, describeQuery);
// Autres exemples de requêtes intéressantes
List<string> interestingQueries = new List<string>
{
"SELECT ?person ?link WHERE { <http://dbpedia.org/resource/Albert_Einstein> ?link ?person . }",
"SELECT ?film WHERE { ?film dbo:starring <http://dbpedia.org/resource/Brad_Pitt> . }",
"SELECT ?book WHERE { ?book dbo:author <http://dbpedia.org/resource/J._K._Rowling> . }",
"SELECT ?city WHERE { ?city dbo:country <http://dbpedia.org/resource/France> . }",
"SELECT ?team ?city WHERE { ?team dbo:league <http://dbpedia.org/resource/Premier_League> . ?team dbo:ground ?ground . ?ground dbo:location ?city . }"
};
foreach (var query in interestingQueries)
{
Console.WriteLine("\nRésultats de la requête :");
ExecuteAndDisplaySparqlQuery(endpoint, query);
}
Résultats de la requête SELECT :
?Concept = http://www.w3.org/2002/07/owl#FunctionalProperty
?Concept = http://www.w3.org/1999/02/22-rdf-syntax-ns#Property
?Concept = http://www.w3.org/2002/07/owl#Thing
?Concept = http://www.w3.org/2002/07/owl#Class
?Concept = http://www.w3.org/2002/07/owl#Ontology
?Concept = http://www.w3.org/2002/07/owl#ObjectProperty
?Concept = http://www.w3.org/2002/07/owl#DatatypeProperty
?Concept = http://xmlns.com/foaf/0.1/Organization
?Concept = http://xmlns.com/foaf/0.1/Person
?Concept = http://dbpedia.org/ontology/Company
...affiché 10 résultats sur 1061.
Résultats de la requête DESCRIBE :
http://dbpedia.org/resource/Einstein_group , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Jorge_Wagensberg_Lubinski , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Albert_Einstein , http://www.w3.org/2002/07/owl#sameAs , http://or.dbpedia.org/resource/%E0%AC%86%E0%AC%B2%E0%AC%AC%E0%AC%B0%E0%AD%8D%E0%AC%9F_%E0%AC%86%E0%AC%87%E0%AC%A8%E0%AC%B7%E0%AD%8D%E0%AC%9F%E0%AC%BE%E0%AC%87%E0%AC%A8
http://dbpedia.org/resource/February_1921 , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Euclidean_geometry , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Albert_Einstein , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Caltech
http://dbpedia.org/resource/1926_in_animation , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Xallarap , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Nicolas_Roeg , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
http://dbpedia.org/resource/Index_of_physics_articles_(A) , http://dbpedia.org/ontology/wikiPageWikiLink , http://dbpedia.org/resource/Albert_Einstein
...affiché 10 triples sur 5026.
Résultats de la requête :
?person = http://www.w3.org/2002/07/owl#Thing , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://xmlns.com/foaf/0.1/Person , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://dbpedia.org/ontology/Person , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://dbpedia.org/ontology/Person , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#NaturalPerson , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q19088 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q215627 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q5 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q729 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q901 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
...affiché 10 résultats sur 1166.
Résultats de la requête :
?film = http://dbpedia.org/resource/Megamind
?film = http://dbpedia.org/resource/Ocean's_Thirteen
?film = http://dbpedia.org/resource/The_Assassination_of_Jesse_James_by_the_Coward_Robert_Ford
?film = http://dbpedia.org/resource/Too_Young_to_Die%3F
?film = http://dbpedia.org/resource/The_Mexican
?film = http://dbpedia.org/resource/Contact_(1992_film)
?film = http://dbpedia.org/resource/Bullet_Train_(film)
?film = http://dbpedia.org/resource/12_Years_a_Slave_(film)
?film = http://dbpedia.org/resource/Glory_Days_(1990_TV_series)
?film = http://dbpedia.org/resource/Two-Fisted_Tales_(film)
...affiché 10 résultats sur 57.
Résultats de la requête :
?book = http://dbpedia.org/resource/The_Christmas_Pig
?book = http://dbpedia.org/resource/The_Ickabog
?book = http://dbpedia.org/resource/The_Casual_Vacancy
?book = http://dbpedia.org/resource/The_Tales_of_Beedle_the_Bard
?book = http://dbpedia.org/resource/The_Silkworm
?book = http://dbpedia.org/resource/The_Running_Grave
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Chamber_of_Secrets
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Deathly_Hallows
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Goblet_of_Fire
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Half-Blood_Prince
...affiché 10 résultats sur 19.
Résultats de la requête :
?city = http://dbpedia.org/resource/183rd_Infantry_Division_of_Africa
?city = http://dbpedia.org/resource/Aur%C3%A9lien_Jeanney
?city = http://dbpedia.org/resource/Cat's_Eyes_(TV_series)
?city = http://dbpedia.org/resource/Cl%C3%A9ment_Chidekh
?city = http://dbpedia.org/resource/Commeny
?city = http://dbpedia.org/resource/Giovanni_Mpetshi_Perricard
?city = http://dbpedia.org/resource/Ingrandes-le-Fresne-sur-Loire
?city = http://dbpedia.org/resource/Jeu_de_Paume_de_Paris
?city = http://dbpedia.org/resource/Julien_Delaplane
?city = http://dbpedia.org/resource/L%C3%A9olia_Jeanjean
...affiché 10 résultats sur 10000.
Résultats de la requête :
?team = http://dbpedia.org/resource/1992%E2%80%9393_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
?team = http://dbpedia.org/resource/1992%E2%80%9393_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Coventry
?team = http://dbpedia.org/resource/1992%E2%80%9393_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Hillfields
?team = http://dbpedia.org/resource/1993%E2%80%9394_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
?team = http://dbpedia.org/resource/1993%E2%80%9394_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Coventry
?team = http://dbpedia.org/resource/1993%E2%80%9394_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Hillfields
?team = http://dbpedia.org/resource/1994%E2%80%9395_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
?team = http://dbpedia.org/resource/1994%E2%80%9395_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Coventry
?team = http://dbpedia.org/resource/1994%E2%80%9395_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Hillfields
?team = http://dbpedia.org/resource/1995%E2%80%9396_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
...affiché 10 résultats sur 1250.
DBpedia est une base de connaissances extraite de Wikipedia, accessible via SPARQL.
Fonction utilitaire ExecuteAndDisplaySparqlQuery() : - Execute une requête sur l’endpoint DBpedia - Affiche les résultats dans un tableau formate - Limite le nombre de résultats (resultsLimit)
| Paramètre | Type | Description |
|---|---|---|
endpoint |
SparqlRemoteEndpoint |
Connexion a DBpedia |
query |
string |
Requête SPARQL |
resultsLimit |
int |
Nombre max de résultats |
Structure de la reponse SPARQL :
Important : DBpedia peut etre lent ou indisponible. Toujours utiliser un timeout et gerer les erreurs.
Comprendre l’utilité du SPARQL pour ceux qui sont habitués au SQL peut être facilité par des exemples de requêtes intéressantes. Voici quelques exemples de requêtes que vous pourriez trouver utiles :
SELECT ?person ?link WHERE {
<http://dbpedia.org/resource/Albert_Einstein> ?link ?person .
}
?person = http://www.w3.org/2002/07/owl#Thing , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://xmlns.com/foaf/0.1/Person , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://dbpedia.org/ontology/Person , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://dbpedia.org/ontology/Person , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.ontologydesignpatterns.org/ont/dul/DUL.owl#NaturalPerson , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q19088 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q215627 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q5 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q729 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
?person = http://www.wikidata.org/entity/Q901 , ?link = http://www.w3.org/1999/02/22-rdf-syntax-ns#type
...affiché 10 résultats sur 1166.
Requête :
SELECT ?person ?link
WHERE {
<http://dbpedia.org/resource/Albert_Einstein> ?link ?person .
}
Signification : “Trouver toutes les relations (?link) et objets (?person) associes a Albert Einstein”
Résultats attendus (exemples) :
| link | person |
|---|---|
dbo:birthPlace |
dbr:Ulm |
dbo:almaMater |
dbr:ETH_Zurich |
dbo:award |
dbr:Nobel_Prize_in_Physics |
foaf:name |
“Albert Einstein”@en |
dbo:field |
dbr:Theoretical_physics |
Note : DBpedia contient des centaines de triplets par ressource. Limiter les résultats avec
LIMIT 20.
SELECT ?film WHERE {
?film dbo:starring <http://dbpedia.org/resource/Brad_Pitt> .
}
?film = http://dbpedia.org/resource/Megamind
?film = http://dbpedia.org/resource/Ocean's_Thirteen
?film = http://dbpedia.org/resource/The_Assassination_of_Jesse_James_by_the_Coward_Robert_Ford
?film = http://dbpedia.org/resource/Too_Young_to_Die%3F
?film = http://dbpedia.org/resource/The_Mexican
?film = http://dbpedia.org/resource/Contact_(1992_film)
?film = http://dbpedia.org/resource/Bullet_Train_(film)
?film = http://dbpedia.org/resource/12_Years_a_Slave_(film)
?film = http://dbpedia.org/resource/Glory_Days_(1990_TV_series)
?film = http://dbpedia.org/resource/Two-Fisted_Tales_(film)
...affiché 10 résultats sur 57.
Requête :
SELECT ?film
WHERE {
?film dbo:starring <http://dbpedia.org/resource/Brad_Pitt> .
}
Structure du triplet recherche :
?film --[dbo:starring]--> Brad_Pitt
Signification : “Quels films ont Brad Pitt comme acteur ?”
Predicat dbo:starring : Relation “X a comme acteur Y” dans l’ontologie DBpedia.
Résultats attendus (extrait) : - http://dbpedia.org/resource/Fight_Club - http://dbpedia.org/resource/Ocean's_Eleven - http://dbpedia.org/resource/Troy_(film) - …
Point important : Les URIs DBpedia suivent le pattern
http://dbpedia.org/resource/Nom_Article_Wikipedia.
SELECT ?book WHERE {
?book dbo:author <http://dbpedia.org/resource/J._K._Rowling> .
}
?book = http://dbpedia.org/resource/The_Christmas_Pig
?book = http://dbpedia.org/resource/The_Ickabog
?book = http://dbpedia.org/resource/The_Casual_Vacancy
?book = http://dbpedia.org/resource/The_Tales_of_Beedle_the_Bard
?book = http://dbpedia.org/resource/The_Silkworm
?book = http://dbpedia.org/resource/The_Running_Grave
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Chamber_of_Secrets
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Deathly_Hallows
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Goblet_of_Fire
?book = http://dbpedia.org/resource/Harry_Potter_and_the_Half-Blood_Prince
...affiché 10 résultats sur 19.
Requête :
SELECT ?book
WHERE {
?book dbo:author <http://dbpedia.org/resource/J._K._Rowling> .
}
Structure du triplet :
?book --[dbo:author]--> J.K._Rowling
Signification : “Quels livres ont J.K. Rowling comme auteur ?”
Résultats attendus (extrait) : - dbr:Harry_Potter_and_the_Philosopher's_Stone - dbr:Harry_Potter_and_the_Chamber_of_Secrets - dbr:The_Casual_Vacancy - …
Différence avec la requête Brad Pitt :
| Requête | Predicat | Domaine | Range |
|---|---|---|---|
| Films | dbo:starring |
Film | Acteur |
| Livres | dbo:author |
Livre | Auteur |
Note : DBpedia distingue les classes (Film, Livre, Personne) via
rdf:type.
SELECT ?city WHERE {
?city dbo:country <http://dbpedia.org/resource/France> .
}
?city = http://dbpedia.org/resource/183rd_Infantry_Division_of_Africa
?city = http://dbpedia.org/resource/Aur%C3%A9lien_Jeanney
?city = http://dbpedia.org/resource/Cat's_Eyes_(TV_series)
?city = http://dbpedia.org/resource/Cl%C3%A9ment_Chidekh
?city = http://dbpedia.org/resource/Commeny
?city = http://dbpedia.org/resource/Giovanni_Mpetshi_Perricard
?city = http://dbpedia.org/resource/Ingrandes-le-Fresne-sur-Loire
?city = http://dbpedia.org/resource/Jeu_de_Paume_de_Paris
?city = http://dbpedia.org/resource/Julien_Delaplane
?city = http://dbpedia.org/resource/L%C3%A9olia_Jeanjean
...affiché 10 résultats sur 10000.
Requête :
SELECT ?city
WHERE {
?city dbo:country <http://dbpedia.org/resource/France> .
}
Structure du triplet :
?city --[dbo:country]--> France
Signification : “Quelles villes sont dans le pays France ?”
Résultats attendus (extrait) : - dbr:Paris - dbr:Lyon - dbr:Marseille - dbr:Toulouse - …
Point important : La requête retourne des URIs, pas des labels. Pour obtenir les noms lisibles :
SELECT ?city ?name
WHERE {
?city dbo:country dbr:France .
?city rdfs:label ?name .
FILTER(LANG(?name) = "fr")
}
Performance : Cette requête peut retourner des milliers de résultats. Utiliser
LIMITetOFFSETpour la pagination.
SELECT ?team ?city WHERE {
?team dbo:league <http://dbpedia.org/resource/Premier_League> .
?team dbo:ground ?ground .
?ground dbo:location ?city .
}
::: {#fe3ce436 .cell quarto-private-1='{"key":"polyglot_notebook","value":{"kernelName":"csharp"}}' tags='[]' execution_count=44}
``` {.csharp .cell-code}
string query = "SELECT ?team ?city WHERE { ?team dbo:league <http://dbpedia.org/resource/Premier_League> . ?team dbo:ground ?ground . ?ground dbo:location ?city . }";
ExecuteAndDisplaySparqlQuery(endpoint, query);
?team = http://dbpedia.org/resource/1992%E2%80%9393_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
?team = http://dbpedia.org/resource/1992%E2%80%9393_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Coventry
?team = http://dbpedia.org/resource/1992%E2%80%9393_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Hillfields
?team = http://dbpedia.org/resource/1993%E2%80%9394_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
?team = http://dbpedia.org/resource/1993%E2%80%9394_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Coventry
?team = http://dbpedia.org/resource/1993%E2%80%9394_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Hillfields
?team = http://dbpedia.org/resource/1994%E2%80%9395_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
?team = http://dbpedia.org/resource/1994%E2%80%9395_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Coventry
?team = http://dbpedia.org/resource/1994%E2%80%9395_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/Hillfields
?team = http://dbpedia.org/resource/1995%E2%80%9396_Coventry_City_F.C._season , ?city = http://dbpedia.org/resource/England
...affiché 10 résultats sur 1250.
:::
Requête :
SELECT ?team ?city
WHERE {
?team dbo:league <http://dbpedia.org/resource/Premier_League> .
?team dbo:ground ?ground .
?ground dbo:location ?city .
}
Pattern de triplets (chaîne de relations) :
?team --[dbo:league]--> Premier_League
?team --[dbo:ground]--> ?ground
?ground --[dbo:location]--> ?city
Signification : “Trouver les équipes de Premier League, leur stade, et la ville du stade”
Exemple de résultat :
| team | city |
|---|---|
dbr:Manchester_United_F.C. |
dbr:Manchester |
dbr:Arsenal_F.C. |
dbr:London |
Navigation de graphe : Cette requête navigue a travers 3 noeuds et 2 aretes.
Concept cle : SPARQL permet de naviguer dans le graphe RDF en suivant les relations.
Voici quelques requêtes SPARQL plus avancées et subtiles qui peuvent être exécutées sur le endpoint DBpedia :
PREFIX dbpedia: <http://dbpedia.org/resource/>
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>
PREFIX dbpprop: <http://dbpedia.org/property/>
SELECT ?scientist ?birth
WHERE {
?scientist a dbpedia-owl:Scientist .
?scientist dbpedia-owl:award dbpedia:Nobel_Prize_in_Physics .
?scientist dbo:birthDate ?birth
}
ORDER BY ?birth
string query = @"
PREFIX dbpedia: <http://dbpedia.org/resource/>
PREFIX dbpedia-owl: <http://dbpedia.org/ontology/>
PREFIX dbpprop: <http://dbpedia.org/property/>
SELECT ?scientist ?birth
WHERE {
?scientist a dbpedia-owl:Scientist .
?scientist dbpedia-owl:award dbpedia:Nobel_Prize_in_Physics .
?scientist dbo:
birthDate ?birth
}
ORDER BY ?birth";
ExecuteAndDisplaySparqlQuery(endpoint, query);Erreur lors de l'exécution de la requête SPARQL : A HTTP Error occurred while trying to make the SPARQL Query, see inner exception for details
Requête :
PREFIX dbpedia: <http://dbpedia.org/resource/>
PREFIX dbo: <http://dbpedia.org/ontology/>
SELECT ?player ?name
WHERE {
?player a dbo:BasketballPlayer .
?player dbo:birthPlace ?place .
?place dbo:country dbpedia:France .
?player foaf:name ?name .
}
Decomposition :
| Pattern | Signification |
|---|---|
?player a dbo:BasketballPlayer |
X est un joueur de basket |
?player dbo:birthPlace ?place |
X est ne a Y |
?place dbo:country dbpedia:France |
Y est en France |
?player foaf:name ?name |
Le nom de X est Z |
Prefixes utilises : - dbo: - DBpedia Ontology (classes et proprietes) - foaf: - Friend of a Friend (proprietes de personnes) - dbpedia: - Ressources DBpedia
Note :
?player a dbo:BasketballPlayerest un raccourci pour?player rdf:type dbo:BasketballPlayer.
SELECT DISTINCT ?film
WHERE
{
?film dbo:wikiPageWikiLink dbr:Adventure_film .
}
?film = http://dbpedia.org/resource/Abigail_(2019_Russian_film)
?film = http://dbpedia.org/resource/Bender:_Gold_of_the_Empire
?film = http://dbpedia.org/resource/Darby_Jones
?film = http://dbpedia.org/resource/Dogtanian_and_the_Three_Muskehounds_(film)
?film = http://dbpedia.org/resource/Dragon_Ball_Super:_Super_Hero
?film = http://dbpedia.org/resource/Onoda:_10,000_Nights_in_the_Jungle
?film = http://dbpedia.org/resource/List_of_Angolan_films
?film = http://dbpedia.org/resource/Don_Leonard
?film = http://dbpedia.org/resource/List_of_American_films_of_1994
?film = http://dbpedia.org/resource/List_of_American_films_of_1997
...affiché 10 résultats sur 3530.
Requête :
SELECT DISTINCT ?film
WHERE {
?film dbo:wikiPageWikiLink dbr:Adventure_film .
}
Predicat dbo:wikiPageWikiLink : Liens internes de Wikipedia.
Signification : “Films dont la page Wikipedia contient un lien vers l’article ‘Adventure film’”
Utilite de DISTINCT : - Sans DISTINCT : Un film peut apparaitre plusieurs fois (liens multiples) - Avec DISTINCT : Chaque film apparait une seule fois
Limite de cette approche : - Basee sur les liens Wikipedia, pas sur une classification formelle - Peut inclure des faux positifs (films mentionnant les films d’aventure) - Peut manquer des films d’aventure sans lien explicite
Meilleure approche : Utiliser
?film dbo:genre dbr:Adventure_filmpour une classification formelle.
SELECT DISTINCT ?film, ?number, ?abstract, ?name
WHERE
{
?film dbo:wikiPageWikiLink dbr:Adventure_film .
?film dbo:wikiPageID ?number .
?film rdfs:comment ?abstract .
?film dbp:name ?name .
}
Nouvelle requête :
SELECT DISTINCT ?film, ?number, ?abstract, ?name
WHERE {
?film dbo:wikiPageWikiLink dbr:Adventure_film .
?film dbo:wikiPageID ?number .
?film dbo:abstract ?abstract .
?film foaf:name ?name .
}
Proprietes ajoutees :
| Propriete | Type | Exemple |
|---|---|---|
dbo:wikiPageID |
Integer | 12345 (ID Wikipedia) |
dbo:abstract |
Literal | Resume du film |
foaf:name |
Literal | Titre du film |
Problème potentiel : Les abstract existent souvent en plusieurs langues.
Résultat sans filtre :
film: dbr:Avatar
abstract: "Avatar is a 2009 film..."@en
abstract: "Avatar est un film de 2009..."@fr
abstract: "Avatar ist ein Film von 2009..."@de
Solution : Filtrer par langue (voir cellule suivante).
FILTER ( LANG ( ?abstract ) = 'en' )
Cette ligne de code peut être ajoutée à n’importe quelle requête pour filtrer les films dont le résumé est en anglais.
OPTIONAL { ?film dbo:cinematography ?cinematography }
Cette ligne de code peut être ajoutée à n’importe quelle requête pour retourner le champ “cinématographie” d’un film, même si ce champ n’est pas présent sur toutes les pages.
SELECT DISTINCT ?film, ?number, ?abstract, (GROUP_CONCAT(DISTINCT ?starring; SEPARATOR="-") AS ?starring), ?name, (GROUP_CONCAT(DISTINCT ?subject; SEPARATOR="-") AS ?subjects)
, ?cinematography, ?director, ?gross, (GROUP_CONCAT(DISTINCT ?producer; SEPARATOR="-") AS ?producer), ?language
WHERE
{
?film dbo:wikiPageWikiLink dbr:Romantic_comedy .
?film dbo:wikiPageID ?number .
?film dbp:starring ?starring .
?film rdfs:comment ?abstract .
?film dbp:name ?name .
OPTIONAL { ?film dct:subject ?subject} .
OPTIONAL { ?film dbo:cinematography ?cinematography } .
OPTIONAL { ?film dbo:director ?director } .
OPTIONAL { ?film dbo:gross ?gross } .
OPTIONAL { ?film dbo:producer ?producer } .
OPTIONAL { ?film dbp:language ?language } .
FILTER ( LANG ( ?abstract ) = 'en' )
}
string query = @"
SELECT DISTINCT ?film, ?number, ?abstract, (GROUP_CONCAT(DISTINCT ?starring; SEPARATOR='-') AS ?starring), ?name, (GROUP_CONCAT(DISTINCT ?subject; SEPARATOR='-') AS ?subjects)
, ?cinematography, ?director, ?gross, (GROUP_CONCAT(DISTINCT ?producer; SEPARATOR='-') AS ?producer), ?language
WHERE
{
?film dbo:wikiPageWikiLink dbr:Romantic_comedy .
?film dbo:wikiPageID ?number .
?film dbp:starring ?starring .
?film rdfs:comment ?abstract .
?film dbp:name ?name .
OPTIONAL { ?film dct:subject ?subject} .
OPTIONAL { ?film dbo:cinematography ?cinematography } .
OPTIONAL { ?film dbo:director ?director } .
OPTIONAL { ?film dbo:gross ?gross } .
OPTIONAL { ?film dbo:producer ?producer } .
OPTIONAL { ?film dbp:language ?language } .
FILTER ( LANG ( ?abstract ) = 'en' )
}";
ExecuteAndDisplaySparqlQuery(endpoint, query);Aucun résultat trouvé.
Requête complete :
SELECT DISTINCT ?film, ?number, ?abstract,
(GROUP_CONCAT(DISTINCT ?starring; SEPARATOR='-') AS ?starring),
?name,
(GROUP_CONCAT(DISTINCT ?genre; SEPARATOR=',') AS ?genre)
WHERE {
...
OPTIONAL { ?film dbo:starring ?starring }
OPTIONAL { ?film dbo:genre ?genre }
FILTER(LANG(?abstract) = 'en')
}
GROUP BY ?film ?number ?abstract ?name
Fonctions d’agregation :
| Fonction | Effet | Exemple |
|---|---|---|
| GROUP_CONCAT | Concatene les valeurs | "Actor1-Actor2-Actor3" |
| SEPARATOR | Separateur entre valeurs | - ou , |
| DISTINCT | Elimine les doublons | Acteurs uniques |
Pourquoi GROUP BY ? : - Un film a plusieurs acteurs -> plusieurs lignes sans GROUP BY - GROUP_CONCAT + GROUP BY -> une ligne par film avec acteurs concatenes
Exemple de résultat :
| film | starring | genre |
|---|---|---|
| Avatar | Sam Worthington-Zoe Saldana | Science fiction,Adventure |
Note : OPTIONAL permet de retourner les films même s’ils n’ont pas d’acteurs ou de genres enregistres.
Ces requêtes avancées permettent d’obtenir des informations plus détaillées et spécifiques de DBpedia. Elles utilisent des concepts tels que les filtres, les options et le regroupement pour affiner les résultats de la requête.
Un SparqlResultSet peut être chargé/sauvegardé à l’aide des interfaces ISparqlResultsReader et ISparqlResultsWriter respectivement. Ces interfaces sont fonctionnellement très similaires aux interfaces IRdfReader et IRdfWriter décrites sur les pages Reading RDF et Writing RDF.
Voici un exemple rapide :
using System;
using VDS.RDF;
using VDS.RDF.Query;
using VDS.RDF.Writing;
using VDS.RDF.Data;
SparqlRemoteEndpoint endpoint = new SparqlRemoteEndpoint(new Uri("http://dbpedia.org/sparql"));
SparqlResultSet results = endpoint.QueryWithResultSet("SELECT DISTINCT ?type WHERE { ?s a ?type } LIMIT 100");
// Maintenant, sauvegardez ceci sur le disque en tant que SPARQL JSON
SparqlJsonWriter writer = new SparqlJsonWriter();
writer.Save(results, "example.srj");
// Sauvegarder ceci sur le disque en tant que SPARQL XML
SparqlXmlWriter writer2 = new SparqlXmlWriter();
writer2.Save(results, "example.srx");
// Lire à nouveau les résultats à partir du fichier
SparqlXmlParser parser = new SparqlXmlParser();
SparqlResultSet results2 = new SparqlResultSet();
parser.Load(results2, "example.srx");
results2.Take(10).Display();| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#QuadMapFormat] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#QuadStorage] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMapFormat] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#QuadMapValue] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMapColumn] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#QuadMapColumn] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#array-of-QuadMapATable] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#QuadMapATable] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
[ [type, http://www.openlinksw.com/schemas/virtrdf#QuadMapFText] ]
| Count |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Variables |
|
| Count |
|
| IsReadOnly |
|
| (values) |
|
True
| index | value | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 |
|
| Key |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||
| Value |
|
| Uri |
|
| AbsolutePath |
|
| AbsoluteUri |
|
| LocalPath |
|
| Authority |
|
| HostNameType | Dns |
| IsDefaultPort |
|
| IsFile |
|
| IsLoopback |
|
| PathAndQuery |
|
| Segments |
|
| IsUnc |
|
| Host |
|
| Port |
|
| Query |
|
| Fragment |
|
| Scheme |
|
| OriginalString |
|
| DnsSafeHost |
|
| IdnHost |
|
| IsAbsoluteUri |
|
| UserEscaped |
|
| UserInfo |
|
Le code précédent : 1. Définit une requête - Recherche de pays francophones 2. Execute sur DBpedia - Via QueryWithResultSet() 3. Affiche les résultats - Avec le writer SPARQL Results XML
Requête executee :
SELECT ?country ?capital
WHERE {
?country a dbo:Country .
?country dbo:officialLanguage dbr:French_language .
?country dbo:capital ?capital .
}
Signification : “Pays ayant le francais comme langue officielle, et leur capitale”
Formats de résultats SPARQL :
| Format | Extension | Writer |
|---|---|---|
| XML | .srx |
SparqlXmlWriter |
| JSON | .srj |
SparqlJsonWriter |
| CSV | .csv |
SparqlCsvWriter |
| TSV | .tsv |
SparqlTsvWriter |
Note : Le format XML est verbeux mais standard W3C.
Trinity RDF est un ORM (Object-Relational Mapping) pour RDF :
| Concept | RDF classique | Trinity RDF |
|---|---|---|
| Graphe | IGraph |
IModel |
| Triplet | Triple |
Proprietes C# |
| Noeud | INode |
Objets C# |
| Store | ITripleStore |
IStore |
Principe : Mapper des classes C# sur des ontologies RDF.
// RDF classique
IUriNode person = g.CreateUriNode(":john");
IUriNode name = g.CreateUriNode("foaf:name");
ILiteralNode value = g.CreateLiteralNode("John Doe");
g.Assert(new Triple(person, name, value));
// Trinity RDF (exemple conceptuel)
var person = new Person { Name = "John Doe" };
model.AddResource(person);Limitation : Necessite un Triple Store compatible (Virtuoso, Stardog, etc.). Les cellules suivantes sont optionnelles car elles dependent d’un serveur externe.
Note pedagogique — Cette cellule etait un exemple de connexion au triple store Virtuoso via la librairie
dotNetRDF. Elle est conservee a titre documentaire mais n’est plus executee :
- Virtuoso n’est pas installe sur les machines cluster du cours
- Le notebook RDF.Net est explicitement deplace en
RDF.Net-Legacy/(cf commita9afcfbd) et n’est plus une cible pedagogique principale. VoirSemanticWeb/SW-1aSW-13pour le parcours actuel.Le code original est preserve ci-dessous a titre de reference :
// SECTION OPTIONNELLE: Connexion a Virtuoso (serveur externe requis)
// Cette section necessite un serveur Virtuoso installe et configure
// Si vous n'avez pas Virtuoso, cette cellule affichera un message d'information
using VDS.RDF;
using VDS.RDF.Storage;
using VDS.RDF.Query;
try
{
Console.WriteLine("NOTE: Cette section necessite un serveur Virtuoso externe.");
Console.WriteLine("Si Virtuoso n'est pas installe, les exemples suivants ne fonctionneront pas.");
Console.WriteLine("Pour installer Virtuoso: https://virtuoso.openlinksw.com/");
Console.WriteLine("");
// Tenter la connexion a Virtuoso
VirtuosoManager virtuoso = new VirtuosoManager("localhost", 1111, "DB", "user", "password");
PersistentTripleStore store = new PersistentTripleStore(virtuoso);
Console.WriteLine("Connexion Virtuoso reussie!");
// Liste les graphes disponibles
foreach (var graphUri in store.Graphs.GraphUris)
{
Console.WriteLine($"Graphe: {graphUri}");
}
store.Dispose();
virtuoso.Dispose();
}
catch (Exception ex)
{
Console.WriteLine($"INFO: Virtuoso non disponible (attendu si serveur non installe): {ex.Message}");
Console.WriteLine("");
Console.WriteLine("Cette erreur est NORMALE si Virtuoso n'est pas installe sur cette machine.");
}Note sur la section Virtuoso :
La cellule suivante tente de se connecter a Virtuoso, un Triple Store serveur.
Pourquoi cette section est optionnelle ? : - Virtuoso doit etre installe et demarre separement - Configuration requise : hostname, port, credentials - Ne fonctionne pas “out of the box” dans ce notebook
Alternative pour tester Trinity : - Utiliser un store en memoire (sans persistence) - Utiliser SQLite comme backend (pas besoin de serveur)
Message d’erreur attendu :
Connection failed: No connection could be made because the target machine actively refused it
Pour les utilisateurs avances : Installer Virtuoso Open Source et configurer les paramètres de connexion.
OWL, ou Web Ontology Language, est un langage de représentation de connaissances pour le Web sémantique, développé par le W3C. OWL permet aux utilisateurs de définir des ontologies, qui sont des modèles de connaissances structurés qui décrivent les concepts dans un domaine et les relations entre ces concepts.
RDF.Net offre des fonctionnalités pour manipuler les ontologies OWL. Les développeurs peuvent utiliser RDF.Net pour créer, modifier et interroger des ontologies OWL, et pour utiliser ces ontologies pour effectuer des inférences sur les données RDF.
// SECTION DEMO: Manipulation d'ontologies avec OntologyGraph
// Cette section utilise un fichier Ontology.rdf d'exemple
using System;
using System.Linq;
using VDS.RDF;
using VDS.RDF.Ontology;
using VDS.RDF.Parsing;
using Graph = VDS.RDF.Graph;
try
{
// Créer un exemple d'ontologie en mémoire au lieu de charger un fichier
OntologyGraph g = new OntologyGraph();
// Définir des namespaces
g.NamespaceMap.AddNamespace("ex", new Uri("http://example.org/"));
g.NamespaceMap.AddNamespace("rdfs", new Uri("http://www.w3.org/2000/01/rdf-schema#"));
// Créer une hiérarchie de classes simple
var animal = g.CreateOntologyClass(new Uri("http://example.org/Animal"));
var mammal = g.CreateOntologyClass(new Uri("http://example.org/Mammal"));
var dog = g.CreateOntologyClass(new Uri("http://example.org/Dog"));
// Ajouter les relations de sous-classe
g.Assert(new Triple(
g.CreateUriNode(new Uri("http://example.org/Mammal")),
g.CreateUriNode(new Uri("http://www.w3.org/2000/01/rdf-schema#subClassOf")),
g.CreateUriNode(new Uri("http://example.org/Animal"))
));
g.Assert(new Triple(
g.CreateUriNode(new Uri("http://example.org/Dog")),
g.CreateUriNode(new Uri("http://www.w3.org/2000/01/rdf-schema#subClassOf")),
g.CreateUriNode(new Uri("http://example.org/Mammal"))
));
Console.WriteLine("Hiérarchie de classes créée:");
Console.WriteLine(" Animal");
Console.WriteLine(" └── Mammal");
Console.WriteLine(" └── Dog");
Console.WriteLine($"Nombre de triplets: {g.Triples.Count}");
Console.WriteLine("✓ Section OntologyGraph terminée avec succès");
}
catch (Exception ex)
{
Console.WriteLine($"Erreur dans la section OntologyGraph: {ex.Message}");
}Hiérarchie de classes créée:
Animal
└── Mammal
└── Dog
Nombre de triplets: 2
✓ Section OntologyGraph terminée avec succès
OntologyGraph : Extension d’IGraph specialisee pour les ontologies OWL.
| Classe standard | Classe ontologie | Fonction |
|---|---|---|
IGraph |
OntologyGraph |
Graphe avec helpers OWL |
INode |
OntologyClass |
Classe OWL |
INode |
OntologyProperty |
Propriete OWL |
Helpers disponibles : - GetOntologyClass(uri) - Acceder a une classe - GetOntologyProperty(uri) - Acceder a une propriete - CreateOntologyClass(uri) - Créer une classe - Navigation de hiérarchies (SubClassOf, SuperClassOf)
Exemple de fichier Ontology.rdf :
Note : La cellule suivante necessite un fichier
Ontology.rdfd’exemple (absent dans le notebook vierge).
// SECTION DEMO: Navigation dans un graphe RDF
// Exemple avec des données créées en mémoire
using VDS.RDF;
using VDS.RDF.Parsing;
try
{
// Créer un graphe avec une hiérarchie simple
IGraph g = new VDS.RDF.Graph();
g.NamespaceMap.AddNamespace("ex", new Uri("http://example.org/"));
g.NamespaceMap.AddNamespace("rdfs", new Uri("http://www.w3.org/2000/01/rdf-schema#"));
IUriNode subClassOf = g.CreateUriNode(new Uri("http://www.w3.org/2000/01/rdf-schema#subClassOf"));
IUriNode animal = g.CreateUriNode(new Uri("http://example.org/Animal"));
IUriNode mammal = g.CreateUriNode(new Uri("http://example.org/Mammal"));
IUriNode dog = g.CreateUriNode(new Uri("http://example.org/Dog"));
g.Assert(new Triple(mammal, subClassOf, animal));
g.Assert(new Triple(dog, subClassOf, mammal));
// Navigation: trouver les super-classes de Dog
Console.WriteLine("Super-classes de Dog:");
foreach (Triple t in g.GetTriplesWithSubjectPredicate(dog, subClassOf))
{
Console.WriteLine($" - {t.Object}");
}
Console.WriteLine("✓ Section navigation RDF terminée avec succès");
}
catch (Exception ex)
{
Console.WriteLine($"Erreur: {ex.Message}");
}Super-classes de Dog:
- http://example.org/Mammal
✓ Section navigation RDF terminée avec succès
Le code précédent créé un graphe d’exemple en memoire pour demonstrer la navigation :
Triplets crees :
@prefix ex: <http://example.org/> .
ex:Alice ex:knows ex:Bob .
ex:Bob ex:knows ex:Charlie .
ex:Alice ex:age "30"^^xsd:integer .
Navigation possible : 1. Suivre les relations - De Alice vers Bob via knows 2. Obtenir les proprietes - Age de Alice 3. Traverser le graphe - Alice -> Bob -> Charlie
Code de navigation :
IUriNode knows = g.GetUriNode(new Uri("http://example.org/knows"));
INode alice = g.GetUriNode(new Uri("http://example.org/Alice"));
// Qui Alice connait-elle ?
var friends = g.GetTriplesWithSubjectPredicate(alice, knows);
foreach (Triple t in friends) {
Console.WriteLine($"Alice knows {t.Object}");
}Avantage de RDF : Navigation flexible sans schema fixe.
L’API fournit les concepts suivants :
L’inférence et le raisonnement sont des mécanismes par lesquels une application peut découvrir des informations supplémentaires qui ne sont pas explicitement indiquées dans les données initiales.
L’interface IInferenceEngine a deux principales méthodes :
Trois types de raisonneurs sont actuellement fournis :
// SECTION DEMO: Inférence RDFS
// Exemple avec des données créées en mémoire
using VDS.RDF;
using VDS.RDF.Parsing;
try
{
// Créer un graphe de données
Graph data = new Graph();
data.NamespaceMap.AddNamespace("ex", new Uri("http://example.org/"));
data.NamespaceMap.AddNamespace("rdf", new Uri("http://www.w3.org/1999/02/22-rdf-syntax-ns#"));
data.NamespaceMap.AddNamespace("rdfs", new Uri("http://www.w3.org/2000/01/rdf-schema#"));
IUriNode rdfType = data.CreateUriNode(new Uri("http://www.w3.org/1999/02/22-rdf-syntax-ns#type"));
IUriNode subClassOf = data.CreateUriNode(new Uri("http://www.w3.org/2000/01/rdf-schema#subClassOf"));
// Définir le schéma: Car est une sous-classe de Vehicle
IUriNode vehicle = data.CreateUriNode(new Uri("http://example.org/Vehicle"));
IUriNode car = data.CreateUriNode(new Uri("http://example.org/Car"));
data.Assert(new Triple(car, subClassOf, vehicle));
// Données: myCar est de type Car
IUriNode myCar = data.CreateUriNode(new Uri("http://example.org/myCar"));
data.Assert(new Triple(myCar, rdfType, car));
Console.WriteLine("Données RDF:");
Console.WriteLine(" - Car rdfs:subClassOf Vehicle");
Console.WriteLine(" - myCar rdf:type Car");
Console.WriteLine($"Nombre de triplets: {data.Triples.Count}");
// Avec inférence RDFS, myCar serait aussi de type Vehicle
Console.WriteLine("Avec inférence RDFS, on pourrait déduire:");
Console.WriteLine(" - myCar rdf:type Vehicle (par transitivité)");
Console.WriteLine("✓ Section inférence RDFS terminée avec succès");
}
catch (Exception ex)
{
Console.WriteLine($"Erreur: {ex.Message}");
}Données RDF:
- Car rdfs:subClassOf Vehicle
- myCar rdf:type Car
Nombre de triplets: 2
Avec inférence RDFS, on pourrait déduire:
- myCar rdf:type Vehicle (par transitivité)
✓ Section inférence RDFS terminée avec succès
RDFS (RDF Schema) définit une sémantique de base pour RDF :
| Constructeur RDFS | Signification |
|---|---|
rdfs:subClassOf |
A est une sous-classe de B |
rdfs:subPropertyOf |
P1 est une sous-propriete de P2 |
rdfs:domain |
La propriete P s’applique aux instances de C |
rdfs:range |
La propriete P a des valeurs de type C |
Exemple d’inference :
# Données
ex:Dog rdfs:subClassOf ex:Animal .
ex:Fido rdf:type ex:Dog .
# Inference automatique
ex:Fido rdf:type ex:Animal . # Deduit par transitivite
Moteurs d’inference RDF.Net : - StaticRdfsReasoner - Inference RDFS complete - OwlReasoner - Inference OWL (plus complexe)
Performance : L’inference peut etre couteuse sur de gros graphes. Elle est souvent faite a la creation, pas a chaque requête.
Les fonctionnalités de Trinity RDF et les capacités d’inférence d’OWL dans RDF.Net permettent de manipuler des données RDF de manière plus intuitive et efficace. Grâce à ces outils, les développeurs peuvent interroger, inférer et travailler avec des graphes RDF et des ontologies de manière simplifiée et puissante.
Retour au sommaire : Index SemanticWeb
1. Comment Trinity RDF simplifie la gestion de RDF
Trinity RDF offre une abstraction orientée objet pour les données RDF. Avec Trinity RDF, les développeurs peuvent travailler avec des données RDF comme s’ils travaillaient avec des objets .NET normaux. Trinity RDF automatise également certaines tâches courantes, comme la création de triples RDF et la sérialisation des données RDF.