
    01i3              	      r
   % S r SSKJr  SSKJrJr  SSKJrJrJ	r	J
r
JrJrJrJrJrJr  SSKrSSKJr  SSKJr  SSKJrJrJrJrJr  SS	KJr  SS
KJ r   / SQr!\ \\\\\\\S.r"0 r#S\$S'    " S S\5      r%\" S5      r& " S S\
\&   5      r' " S S\'\&   5      r(SS jr)SS jr*\" 5       r+\," \+S5      (       aT  \"R[                  5        H?  u  r.r/\+Ra                  \.S9 H&  r1\(" \1Rd                  \/\15      \#\1Rd                  \/4'   M(     MA     Om\(       a  \3" \+\45      (       d   e\"R[                  5        HB  u  r.r/\+RU                  \./ 5       H&  r1\(" \1Rd                  \/\15      \#\1Rd                  \/4'   M(     MD     \ S     SS jj5       r5\SSS jj5       r5 S     SS jjr5\Rj                  Rl                  Rn                  Rp                  (       a  \)" S\ SS5        \)" S\ S S!5        \)" S!\ S S!5        \)" S"\ S S"5        \)" S#\ S$S%5        \)" S&\ S'S(5        \)" S)\ S*S)5        \)" S+\ S*S+5        \)" S,\S-S.5        \)" S/\S-S.5        \)" S0\S-S15        \)" S2\S3S45        \)" S5\S3S45        \)" S6\S7S85        \)" S9\S7S85        \)" S:\S7S85        \)" S;\S<S=5        \)" S>\S?S@5        \)" SA\S?S@5        \)" SB\S?S@5        \)" SC\S?SD5        \)" SE\SFSG5        \)" SH\SFSG5        \)" SI\SJSK5        \)" SL\SJSK5        \)" SM\SNSO5        \)" SP\SNSO5        \)" SQ\SRSS5        \)" ST\SRSS5        \)" SU\SVSW5        \)" SX\SYSZ5        \)" S,\S[S\5        \)" S/\S[S\5        \)" S2\S]S^5        \)" S5\S]S^5        \)" S6\S]S_5        \)" S9\S]S_5        \)" S:\S]S_5        \)" S>\S`Sa5        \)" SA\S`Sa5        \)" SB\S`Sa5        \)" SC\S`Sa5        \)" SH\SbSc5        \)" SE\SbSc5        \)" SI\SdSe5        \)" SL\SdSe5        \)" SM\SfSg5        \)" SP\SfSg5        \)" SQ\ShSi5        \)" ST\ShSi5        \)" SU\SjSk5        \)" SX\SlSm5        \)" Sn\SoSp5        \)" Sn\SoSq5        \)" Sn\SoSr5        \)" S/\SsSt5        \)" Su\SsSt5        \)" Sv\SwSx5        \)" Sy\SzS{5        \)" S|\SzS{5        \)" S}\S~S5        \)" S\S~S5        \)" S/\SsS5        \)" Su\SsS5        \)" Sy\SzS5        \)" S|\SzS5        \)" S}\S~S5        \)" S\S~S5        \)" S\SS5        \)" S\SS5        \5" \S9 V s1 s H  o Rd                  iM     sn r9\5" \S9 V s1 s H  o Rd                  iM     sn r:\9\:-
  r;\; H  r<\)" \<\SS5        M     gs  sn f s  sn f )a  Plugin support for rdf.

There are a number of plugin points for rdf: parser, serializer,
store, query processor, and query result. Plugins can be registered
either through setuptools entry_points or by calling
rdf.plugin.register directly.

If you have a package that uses a setuptools based `setup.py` you can add the
following to your setup:

```python
entry_points = {
    'rdf.plugins.parser': [
        'nt =     rdf.plugins.parsers.ntriples:NTParser',
        ],
    'rdf.plugins.serializer': [
        'nt =     rdf.plugins.serializers.NTSerializer:NTSerializer',
        ],
    }
```

See the [setuptools dynamic discovery of services and plugins](http://peak.telecommunity.com/DevCenter/setuptools#dynamic-discovery-of-services-and-plugins)
for moreinformation.
    )annotations)
EntryPointentry_points)
TYPE_CHECKINGAnyDictGenericIteratorOptionalTupleTypeTypeVaroverloadN)Error)Parser)	ProcessorResultResultParserResultSerializerUpdateProcessor)
Serializer)Store)registergetpluginsPluginExceptionPluginPluginT	PKGPlugin)zrdf.plugins.storezrdf.plugins.serializerzrdf.plugins.parserzrdf.plugins.resultparserzrdf.plugins.resultserializerzrdf.plugins.queryprocessorzrdf.plugins.queryresultzrdf.plugins.updateprocessorz#Dict[Tuple[str, Type[Any]], Plugin]_pluginsc                      \ rS rSrSrg)r   O    N)__name__
__module____qualname____firstlineno____static_attributes__r#       G/home/james-whalen/.local/lib/python3.13/site-packages/rdflib/plugin.pyr   r   O   s    r)   r   r   c                  8    \ rS rSr        SS jrSS jrSrg)r   W   c                B    Xl         X l        X0l        X@l        S U l        g N)namekindmodule_path
class_name_class)selfr/   r0   r1   r2   s        r*   __init__Plugin.__init__X   s      		&$/3r)   c                    U R                   cC  [        U R                  [        5       [	        5       S/5      n[        XR                  5      U l         U R                   $ )N )r3   
__import__r1   globalslocalsgetattrr2   )r4   modules     r*   getClassPlugin.getClassa   sB    ;; 0 0')VXtLF!&//:DK{{r)   )r3   r2   r0   r1   r/   N)r/   strr0   Type[PluginT]r1   r@   r2   r@   returnrA   r$   r%   r&   r'   r5   r>   r(   r#   r)   r*   r   r   W   s,    44,4;>4LO4r)   r   c                  (    \ rS rSrSS jrSS jrSrg)r   h   c                6    Xl         X l        X0l        S U l        g r.   )r/   r0   epr3   )r4   r/   r0   rH   s       r*   r5   PKGPlugin.__init__i   s    		/3r)   c                r    U R                   c  U R                  R                  5       U l         U R                   $ r.   )r3   rH   load)r4   s    r*   r>   PKGPlugin.getClasso   s'    ;;'',,.DK{{r)   )r3   rH   r0   r/   N)r/   r@   r0   rA   rH   r   rB   rD   r#   r)   r*   r   r   h   s    4r)   r   c                0    [        XX#5      nU[        X4'   g)zl
Register the plugin for (name, kind). The module_path and
class_name should be the path to a plugin class.
N)r   r    )r/   r0   r1   r2   ps        r*   r   r   u   s    
 	t;3AHd\r)   c                |     [         X4   nUR                  5       $ ! [         a    [        SU < SU< S35      ef = f)z_
Return the class for the specified (name, kind). Raises a
PluginException if unable to do so.
zNo plugin registered for (z, ))r    KeyErrorr   r>   r/   r0   rN   s      r*   r   r   ~   sE    
R%tl3 ::<  RT4PQQRs   
 ;select)groupc                    g r.   r#   r/   r0   s     r*   r   r      s     !$r)   c                    g r.   r#   rV   s     r*   r   r      s    NQr)   c              #     #    [         R                  5        H/  nU b  XR                  :X  d  M  Ub  XR                  :X  d  M+  Uv   M1     g7f)z_
A generator of the plugins.

Pass in name and kind to filter... else leave None to match all.
N)r    valuesr/   r0   rR   s      r*   r   r      s6      __LDFFNG s   (AA	A
BerkeleyDBz rdflib.plugins.stores.berkeleydbdefaultzrdflib.plugins.stores.memoryMemorySimpleMemory	Auditablezrdflib.plugins.stores.auditableAuditableStore
Concurrentz rdflib.plugins.stores.concurrentConcurrentStoreSPARQLStorez!rdflib.plugins.stores.sparqlstoreSPARQLUpdateStorezapplication/rdf+xmlz!rdflib.plugins.serializers.rdfxmlXMLSerializerxmlz
pretty-xmlPrettyXMLSerializerztext/n3zrdflib.plugins.serializers.n3N3Serializern3ztext/turtlez!rdflib.plugins.serializers.turtleTurtleSerializerturtlettl
longturtlez%rdflib.plugins.serializers.longturtleLongTurtleSerializerzapplication/n-tripleszrdflib.plugins.serializers.ntNTSerializerntriplesntnt11NT11Serializerzjson-ldz!rdflib.plugins.serializers.jsonldJsonLDSerializerzapplication/ld+jsonzapplication/n-quadsz!rdflib.plugins.serializers.nquadsNQuadsSerializernquadszapplication/trixzrdflib.plugins.serializers.trixTriXSerializertrixzapplication/trigzrdflib.plugins.serializers.trigTrigSerializertrighextzrdflib.plugins.serializers.hextHextuplesSerializerpatchz rdflib.plugins.serializers.patchPatchSerializerzrdflib.plugins.parsers.rdfxmlRDFXMLParserz rdflib.plugins.parsers.notation3N3ParserTurtleParserzrdflib.plugins.parsers.ntriplesNTParserzrdflib.plugins.parsers.jsonldJsonLDParserzrdflib.plugins.parsers.nquadsNQuadsParserzrdflib.plugins.parsers.trix
TriXParserzrdflib.plugins.parsers.trig
TrigParserzrdflib.plugins.parsers.hextHextuplesParserzrdflib.plugins.parsers.patchRDFPatchParsersparqlzrdflib.plugins.sparql.processorSPARQLResultSPARQLProcessorSPARQLUpdateProcessorz(rdflib.plugins.sparql.results.xmlresultsXMLResultSerializerzapplication/sparql-results+xmltxtz(rdflib.plugins.sparql.results.txtresultsTXTResultSerializerjsonz)rdflib.plugins.sparql.results.jsonresultsJSONResultSerializerzapplication/sparql-results+jsoncsvz(rdflib.plugins.sparql.results.csvresultsCSVResultSerializerztext/csvXMLResultParserJSONResultParserCSVResultParsertsvz(rdflib.plugins.sparql.results.tsvresultsTSVResultParserztext/tab-separated-values)r0   z#rdflib.plugins.sparql.results.graphGraphResultParser)r/   r@   r0   z	Type[Any])r/   r@   r0   rA   rC   rA   )..)r/   Optional[str]r0   rA   rC   Iterator[Plugin[PluginT]])r/   r   r0   NonerC   zIterator[Plugin])NN)r/   r   r0   zOptional[Type[PluginT]]rC   r   )=__doc__
__future__r   importlib.metadatar   r   typingr   r   r   r	   r
   r   r   r   r   r    rdflib.plugins.stores.berkeleydbrdflibrdflib.exceptionsr   rdflib.parserr   rdflib.queryr   r   r   r   r   rdflib.serializerr   rdflib.storer   __all__rdflib_entry_pointsr    __annotations__r   r   r   r   r   r   all_entry_pointshasattritemsentry_pointr0   rS   rH   r/   
isinstancedictr   stores
berkeleydb	has_bsddbgraph_parsersresult_parsersgraph_result_parsersparser_name)parsers   0r*   <module>r      ss  2 # 7   ( #    )  (  ,$4"+%#2	  13
- 2	e 	
 )
WW "
w 
	  > 
X&&0668T")))<B(1"''4(DHbggt_% = 9
 *D11110668T"&&{B7B(1"''4(DHbggt_% 8 9
 
58$
$%2$$ 
$
 
 Q 
 Q AE


&=

 
>>##--*	 		"	 		"	 		"	 		%	 		&	 		'	 		'	 	'	 		'	 	'	 	#	 	#	 	'	 	'	 		'	 	+	 	#	 	#	 	#	 	
#	 	'	 	'	 	'	 	'	 	%	 	
%	 	%	 	
%	 	
%	 	&	 	
#	 		
#	 	
&	 	
&	 	
&	 	
&	 		
&	 	
%	 	
%	 	
%	 	

%	 	
#	 	
#	 	
#	 	
#	 	
!	 	

!	 	
!	 	

!	 	

!	 	
"	 	
%	 	%	 	%	 		.	 	$.	 		.	 	
/	 	%/	 		.	 	.	 		.	 	$.	 	
/	 	%/	 		.	 	.	 		.	 	.	 ,3+?@+?+?@,3,FG,F&++,FG$~5 'K-	 ( AGs   T/=T4