Purtle
Fast streaming RDF serializer for PHP
Loading...
Searching...
No Matches
Wikimedia\Purtle\JsonLdRdfWriter Class Reference

RdfWriter implementation for generating JSON-LD output. More...

+ Inheritance diagram for Wikimedia\Purtle\JsonLdRdfWriter:
+ Collaboration diagram for Wikimedia\Purtle\JsonLdRdfWriter:

Public Member Functions

 __construct ( $role=parent::DOCUMENT_ROLE, BNodeLabeler $labeler=null)
 
 encode ( $val, $indent)
 Emit $val as JSON, with $indent extra indentations on each line.
 
 writeValue ( $literal, $typeBase, $typeLocal=null)
 
 getMimeType ()
 
- Public Member Functions inherited from Wikimedia\Purtle\RdfWriterBase
 prefix ( $prefix, $iri)
 Registers a prefix.
 
 getPrefixes ()
 Returns the prefix map.
 
 sub ()
 
 getRole ()
 
 blank ( $label=null)
 
 start ()
 
 finish ()
 
 drain ()
 
 about ( $base, $local=null)
 
 a ( $typeBase, $typeLocal=null)
 
 say ( $base, $local=null)
 
 is ( $base, $local=null)
 
 text ( $text, $language=null)
 
 value ( $value, $typeBase=null, $typeLocal=null)
 

Protected Member Functions

 beginJson ()
 Write document header.
 
 finishJson ()
 Write document footer.
 
 finishDocument ()
 
 writeSubject ( $base, $local=null)
 
 finishSubject ()
 
 writePredicate ( $base, $local=null)
 
 writeResource ( $base, $local=null)
 
 writeText ( $text, $language=null)
 
 addTypedValue ( $type, $simpleVal, $expandedVal=null, $forceExpand=false)
 Add a typed value for the given predicate.
 
 finishPredicate ()
 
 newSubWriter ( $role, BNodeLabeler $labeler)
 
- Protected Member Functions inherited from Wikimedia\Purtle\RdfWriterBase
 registerShorthand ( $shorthand, $prefix, $local)
 Registers a shorthand that can be used instead of a qname, like 'a' can be used instead of 'rdf:type'.
 
 isShorthand ( $shorthand)
 Determines whether $shorthand can be used as a shorthand.
 
 isPrefix ( $prefix)
 Determines whether $shorthand can legally be used as a prefix.
 
 isValidLanguageCode ( $languageCode)
 
 write ( $w)
 Appends string to the output buffer.
 
 expandShorthand (&$base, &$local)
 If $base is a shorthand, $base and $local are updated to hold whatever qname the shorthand was associated with.
 
 expandQName (&$base, &$local)
 If $base is a registered prefix, $base will be replaced by the base IRI associated with that prefix, with $local appended.
 
 state ( $newState)
 Perform a state transition.
 
 expandSubject (&$base, &$local)
 Perform any expansion (shorthand to qname, qname to IRI) desired for subject identifiers.
 
 expandPredicate (&$base, &$local)
 Perform any expansion (shorthand to qname, qname to IRI) desired for predicate identifiers.
 
 expandResource (&$base, &$local)
 Perform any expansion (shorthand to qname, qname to IRI) desired for resource identifiers.
 
 expandType (&$base, &$local)
 Perform any expansion (shorthand to qname, qname to IRI) desired for type identifiers.
 

Protected Attributes

 $context = []
 
 $defaulted = []
 
- Protected Attributes inherited from Wikimedia\Purtle\RdfWriterBase
const STATE_START = 0
 
const STATE_DOCUMENT = 5
 
const STATE_SUBJECT = 10
 
const STATE_PREDICATE = 11
 
const STATE_OBJECT = 12
 
const STATE_FINISH = 666
 
 $prefixes = []
 
 $currentSubject = [ null, null ]
 
 $currentPredicate = [ null, null ]
 
 $role
 
 $transitionTable
 

Additional Inherited Members

- Public Attributes inherited from Wikimedia\Purtle\RdfWriterBase
const DOCUMENT_ROLE = 'document'
 Role ID for writers that will generate a full RDF document.
 
const SUBDOCUMENT_ROLE = 'sub'
 

Detailed Description

RdfWriter implementation for generating JSON-LD output.

@license GPL-2.0-or-later

Author
C. Scott Ananian

Constructor & Destructor Documentation

◆ __construct()

Wikimedia\Purtle\JsonLdRdfWriter::__construct ( $role = parent::DOCUMENT_ROLE,
BNodeLabeler $labeler = null )
Parameters
string$role
BNodeLabeler | null$labeler

Reimplemented from Wikimedia\Purtle\RdfWriterBase.

Member Function Documentation

◆ addTypedValue()

Wikimedia\Purtle\JsonLdRdfWriter::addTypedValue ( $type,
$simpleVal,
$expandedVal = null,
$forceExpand = false )
protected

Add a typed value for the given predicate.

If possible, adds a default type to the context to avoid having to repeat type information in each value for this predicate. If there is already a default type which conflicts with this one, or if $forceExpand is true, then use the "expanded" value which will explicitly override any default type.

Parameters
string$typeThe compactified JSON-LD @type for this value, or self::DEFAULT_TYPE to indicate the default JSON-LD type coercion rules should be used.
string | int | float | bool$simpleValThe "simple" representation for this value, used if the type can be hoisted into the context.
array | null$expandedValThe "expanded" representation for this value, used if the context @type conflicts with this value; or null to use "@value" for the expanded representation.
bool$forceExpandIf true, don't try to add this type to the context. Defaults to false.

◆ encode()

Wikimedia\Purtle\JsonLdRdfWriter::encode ( $val,
$indent )

Emit $val as JSON, with $indent extra indentations on each line.

Parameters
array$val
int$indent
Returns
string the JSON string for $val

◆ getMimeType()

Wikimedia\Purtle\JsonLdRdfWriter::getMimeType ( )
Returns
string a MIME type

Implements Wikimedia\Purtle\RdfWriter.

◆ newSubWriter()

Wikimedia\Purtle\JsonLdRdfWriter::newSubWriter ( $role,
BNodeLabeler $labeler )
protected
Parameters
string$role
BNodeLabeler$labeler
Returns
RdfWriterBase

Reimplemented from Wikimedia\Purtle\RdfWriterBase.

◆ writePredicate()

Wikimedia\Purtle\JsonLdRdfWriter::writePredicate ( $base,
$local = null )
protected
Parameters
string$base
string | null$local

Reimplemented from Wikimedia\Purtle\RdfWriterBase.

◆ writeResource()

Wikimedia\Purtle\JsonLdRdfWriter::writeResource ( $base,
$local = null )
protected
Parameters
string$base
string | null$local

Reimplemented from Wikimedia\Purtle\RdfWriterBase.

◆ writeSubject()

Wikimedia\Purtle\JsonLdRdfWriter::writeSubject ( $base,
$local = null )
protected
Parameters
string$base
string | null$local

Reimplemented from Wikimedia\Purtle\RdfWriterBase.

◆ writeText()

Wikimedia\Purtle\JsonLdRdfWriter::writeText ( $text,
$language = null )
protected
Parameters
string$text
string | null$language

Reimplemented from Wikimedia\Purtle\RdfWriterBase.

◆ writeValue()

Wikimedia\Purtle\JsonLdRdfWriter::writeValue ( $literal,
$typeBase,
$typeLocal = null )
Parameters
string$literal
string | null$typeBase
string | null$typeLocal

Reimplemented from Wikimedia\Purtle\RdfWriterBase.


The documentation for this class was generated from the following file: