hydra-rdf-0.17.2: src/main/haskell/Hydra/Shex/Syntax.hs
-- Note: this is an automatically generated file. Do not edit.
-- | A Shex model. Based on the BNF at:
-- | https://github.com/shexSpec/grammar/blob/master/bnf
module Hydra.Shex.Syntax where
import qualified Hydra.Core as Core
import Prelude hiding (Enum, Ordering, decodeFloat, encodeFloat, fail, map, pure, sum)
import qualified Data.Scientific as Sci
-- | ShEx grammar production: Annotation ::= '//' Predicate (Iri | Literal)
data Annotation =
Annotation {
annotationPredicate :: Predicate,
annotationAlts :: AnnotationAlts}
deriving (Eq, Ord, Read, Show)
_Annotation = Core.Name "hydra.shex.syntax.Annotation"
_Annotation_Predicate = Core.Name "Predicate"
_Annotation_alts = Core.Name "alts"
-- | A synthetic Hydra type representing the alternatives of the ShEx Annotation production
data AnnotationAlts =
AnnotationAltsIri Iri |
AnnotationAltsLiteral Literal
deriving (Eq, Ord, Read, Show)
_AnnotationAlts = Core.Name "hydra.shex.syntax.AnnotationAlts"
_AnnotationAlts_Iri = Core.Name "Iri"
_AnnotationAlts_Literal = Core.Name "Literal"
-- | ShEx grammar production: AtpNameLn ::= '@' PnameNs PnLocal
data AtpNameLn =
AtpNameLn {
atpNameLnPnameNs :: PnameNs,
atpNameLnPnLocal :: PnLocal}
deriving (Eq, Ord, Read, Show)
_AtpNameLn = Core.Name "hydra.shex.syntax.AtpNameLn"
_AtpNameLn_PnameNs = Core.Name "PnameNs"
_AtpNameLn_PnLocal = Core.Name "PnLocal"
-- | ShEx grammar production: AtpNameNs ::= '@' PnPrefix? ':'
newtype AtpNameNs =
AtpNameNs {
unAtpNameNs :: (Maybe PnPrefix)}
deriving (Eq, Ord, Read, Show)
_AtpNameNs = Core.Name "hydra.shex.syntax.AtpNameNs"
-- | ShEx grammar production: BaseDecl ::= 'BASE' IriRef
newtype BaseDecl =
BaseDecl {
unBaseDecl :: IriRef}
deriving (Eq, Ord, Read, Show)
_BaseDecl = Core.Name "hydra.shex.syntax.BaseDecl"
-- | ShEx grammar production: BlankNode ::= BlankNodeLabel
newtype BlankNode =
BlankNode {
unBlankNode :: BlankNodeLabel}
deriving (Eq, Ord, Read, Show)
_BlankNode = Core.Name "hydra.shex.syntax.BlankNode"
-- | A component of the ShEx BlankNodeLabel production
data BlankNodeLabel =
BlankNodeLabel {
blankNodeLabelAlts :: BlankNodeLabelAlts,
blankNodeLabelListOfAlts :: (Maybe [BlankNodeLabelListOfAltsOptionElmt]),
blankNodeLabelPnChars :: PnChars}
deriving (Eq, Ord, Read, Show)
_BlankNodeLabel = Core.Name "hydra.shex.syntax.BlankNodeLabel"
_BlankNodeLabel_alts = Core.Name "alts"
_BlankNodeLabel_ListOfAlts = Core.Name "ListOfAlts"
_BlankNodeLabel_PnChars = Core.Name "PnChars"
-- | A synthetic Hydra type representing the alternatives of the ShEx BlankNodeLabel production
data BlankNodeLabelAlts =
BlankNodeLabelAltsPnCharsU PnCharsU |
BlankNodeLabelAltsRegex String
deriving (Eq, Ord, Read, Show)
_BlankNodeLabelAlts = Core.Name "hydra.shex.syntax.BlankNodeLabelAlts"
_BlankNodeLabelAlts_PnCharsU = Core.Name "PnCharsU"
_BlankNodeLabelAlts_regex = Core.Name "regex"
-- | A synthetic Hydra type representing one alternative of an optional list element within the ShEx BlankNodeLabel production
data BlankNodeLabelListOfAltsOptionElmt =
BlankNodeLabelListOfAltsOptionElmtPnChars PnChars |
BlankNodeLabelListOfAltsOptionElmtPeriod
deriving (Eq, Ord, Read, Show)
_BlankNodeLabelListOfAltsOptionElmt = Core.Name "hydra.shex.syntax.BlankNodeLabelListOfAltsOptionElmt"
_BlankNodeLabelListOfAltsOptionElmt_PnChars = Core.Name "PnChars"
_BlankNodeLabelListOfAltsOptionElmt_Period = Core.Name "Period"
-- | ShEx grammar production: BooleanLiteral ::= 'true' | 'false'
data BooleanLiteral =
BooleanLiteralTrue |
BooleanLiteralFalse
deriving (Eq, Ord, Read, Show)
_BooleanLiteral = Core.Name "hydra.shex.syntax.BooleanLiteral"
_BooleanLiteral_True = Core.Name "True"
_BooleanLiteral_False = Core.Name "False"
-- | A component of the ShEx BracketedTripleExpr production
data BracketedTripleExpr =
BracketedTripleExpr {
bracketedTripleExprInnerTripleExpr :: InnerTripleExpr,
bracketedTripleExprCardinality :: (Maybe Cardinality),
bracketedTripleExprListOfAnnotation :: [Annotation],
bracketedTripleExprSemanticActions :: SemanticActions}
deriving (Eq, Ord, Read, Show)
_BracketedTripleExpr = Core.Name "hydra.shex.syntax.BracketedTripleExpr"
_BracketedTripleExpr_InnerTripleExpr = Core.Name "InnerTripleExpr"
_BracketedTripleExpr_Cardinality = Core.Name "Cardinality"
_BracketedTripleExpr_listOfAnnotation = Core.Name "listOfAnnotation"
_BracketedTripleExpr_SemanticActions = Core.Name "SemanticActions"
-- | ShEx grammar production: Cardinality ::= '*' | '+' | '?' | RepeatRange
data Cardinality =
CardinalityAst |
CardinalityPlus |
CardinalityQuest |
CardinalityRepeatRange RepeatRange
deriving (Eq, Ord, Read, Show)
_Cardinality = Core.Name "hydra.shex.syntax.Cardinality"
_Cardinality_Ast = Core.Name "Ast"
_Cardinality_Plus = Core.Name "Plus"
_Cardinality_Quest = Core.Name "Quest"
_Cardinality_RepeatRange = Core.Name "RepeatRange"
-- | A component of the ShEx Code production
newtype Code =
Code {
unCode :: [CodeElmt]}
deriving (Eq, Ord, Read, Show)
_Code = Core.Name "hydra.shex.syntax.Code"
-- | ShEx grammar production: CodeDecl ::= '%' Iri (Code | '%')
data CodeDecl =
CodeDecl {
codeDeclIri :: Iri,
codeDeclAlts :: CodeDeclAlts}
deriving (Eq, Ord, Read, Show)
_CodeDecl = Core.Name "hydra.shex.syntax.CodeDecl"
_CodeDecl_Iri = Core.Name "Iri"
_CodeDecl_alts = Core.Name "alts"
-- | A synthetic Hydra type representing the alternatives of the ShEx CodeDecl production
data CodeDeclAlts =
CodeDeclAltsCode Code |
CodeDeclAltsPercnt
deriving (Eq, Ord, Read, Show)
_CodeDeclAlts = Core.Name "hydra.shex.syntax.CodeDeclAlts"
_CodeDeclAlts_Code = Core.Name "Code"
_CodeDeclAlts_Percnt = Core.Name "Percnt"
-- | A synthetic Hydra type representing one element of the ShEx Code production
data CodeElmt =
CodeElmtRegex String |
CodeElmtSequence String |
CodeElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_CodeElmt = Core.Name "hydra.shex.syntax.CodeElmt"
_CodeElmt_regex = Core.Name "regex"
_CodeElmt_sequence = Core.Name "sequence"
_CodeElmt_Uchar = Core.Name "Uchar"
-- | ShEx grammar production: Datatype ::= Iri
newtype Datatype =
Datatype {
unDatatype :: Iri}
deriving (Eq, Ord, Read, Show)
_Datatype = Core.Name "hydra.shex.syntax.Datatype"
-- | A component of the ShEx Decimal production
newtype Decimal =
Decimal {
unDecimal :: String}
deriving (Eq, Ord, Read, Show)
_Decimal = Core.Name "hydra.shex.syntax.Decimal"
-- | ShEx grammar production: Directive ::= BaseDecl | PrefixDecl
data Directive =
DirectiveBaseDecl BaseDecl |
DirectivePrefixDecl PrefixDecl
deriving (Eq, Ord, Read, Show)
_Directive = Core.Name "hydra.shex.syntax.Directive"
_Directive_BaseDecl = Core.Name "BaseDecl"
_Directive_PrefixDecl = Core.Name "PrefixDecl"
-- | A component of the ShEx Double production
newtype Double_ =
Double_ {
unDouble :: String}
deriving (Eq, Ord, Read, Show)
_Double = Core.Name "hydra.shex.syntax.Double"
-- | ShEx grammar production: Echar ::= '\' [tbnrf\'']
newtype Echar =
Echar {
unEchar :: String}
deriving (Eq, Ord, Read, Show)
_Echar = Core.Name "hydra.shex.syntax.Echar"
-- | ShEx grammar production: Exclusion ::= '-' Iri '~'?
newtype Exclusion =
Exclusion {
unExclusion :: Iri}
deriving (Eq, Ord, Read, Show)
_Exclusion = Core.Name "hydra.shex.syntax.Exclusion"
-- | ShEx grammar production: ExtraPropertySet ::= 'EXTRA' Predicate+
newtype ExtraPropertySet =
ExtraPropertySet {
unExtraPropertySet :: [Predicate]}
deriving (Eq, Ord, Read, Show)
_ExtraPropertySet = Core.Name "hydra.shex.syntax.ExtraPropertySet"
-- | ShEx grammar production: GroupTripleExpr ::= SingleElementGroup | MultiElementGroup
data GroupTripleExpr =
GroupTripleExprSingleElementGroup SingleElementGroup |
GroupTripleExprMultiElementGroup MultiElementGroup
deriving (Eq, Ord, Read, Show)
_GroupTripleExpr = Core.Name "hydra.shex.syntax.GroupTripleExpr"
_GroupTripleExpr_SingleElementGroup = Core.Name "SingleElementGroup"
_GroupTripleExpr_MultiElementGroup = Core.Name "MultiElementGroup"
-- | ShEx grammar production: Hex ::= [0-9] | [A-F] | [a-f]
newtype Hex =
Hex {
unHex :: String}
deriving (Eq, Ord, Read, Show)
_Hex = Core.Name "hydra.shex.syntax.Hex"
-- | ShEx grammar production: Include ::= '&' TripleExprLabel
newtype Include =
Include {
unInclude :: TripleExprLabel}
deriving (Eq, Ord, Read, Show)
_Include = Core.Name "hydra.shex.syntax.Include"
-- | ShEx grammar production: IncludeSet ::= '&' ShapeExprLabel+
newtype IncludeSet =
IncludeSet {
unIncludeSet :: [ShapeExprLabel]}
deriving (Eq, Ord, Read, Show)
_IncludeSet = Core.Name "hydra.shex.syntax.IncludeSet"
-- | ShEx grammar production: InlineShapeAnd ::= InlineShapeNot ('AND' InlineShapeNot)*
data InlineShapeAnd =
InlineShapeAnd {
inlineShapeAndInlineShapeNot :: InlineShapeNot,
inlineShapeAndListOfSequence :: [InlineShapeNot]}
deriving (Eq, Ord, Read, Show)
_InlineShapeAnd = Core.Name "hydra.shex.syntax.InlineShapeAnd"
_InlineShapeAnd_InlineShapeNot = Core.Name "InlineShapeNot"
_InlineShapeAnd_listOfSequence = Core.Name "listOfSequence"
-- | A component of the ShEx InlineShapeAtom production
data InlineShapeAtom =
InlineShapeAtomSeq InlineShapeAtomSequence |
InlineShapeAtomSeq2 InlineShapeAtomSequence2 |
InlineShapeAtomSequence3 ShapeExpression |
InlineShapeAtomPeriod
deriving (Eq, Ord, Read, Show)
_InlineShapeAtom = Core.Name "hydra.shex.syntax.InlineShapeAtom"
_InlineShapeAtom_seq = Core.Name "seq"
_InlineShapeAtom_seq2 = Core.Name "seq2"
_InlineShapeAtom_sequence3 = Core.Name "sequence3"
_InlineShapeAtom_Period = Core.Name "Period"
-- | A synthetic Hydra type representing a sequence within the ShEx InlineShapeAtom production
data InlineShapeAtomSequence =
InlineShapeAtomSequence {
inlineShapeAtomSequenceNodeConstraint :: NodeConstraint,
inlineShapeAtomSequenceInlineShapeOrRef :: (Maybe InlineShapeOrRef)}
deriving (Eq, Ord, Read, Show)
_InlineShapeAtomSequence = Core.Name "hydra.shex.syntax.InlineShapeAtomSequence"
_InlineShapeAtomSequence_NodeConstraint = Core.Name "NodeConstraint"
_InlineShapeAtomSequence_InlineShapeOrRef = Core.Name "InlineShapeOrRef"
-- | A synthetic Hydra type representing a secondary sequence within the ShEx InlineShapeAtom production
data InlineShapeAtomSequence2 =
InlineShapeAtomSequence2 {
inlineShapeAtomSequence2InlineShapeOrRef :: InlineShapeOrRef,
inlineShapeAtomSequence2NodeConstraint :: (Maybe NodeConstraint)}
deriving (Eq, Ord, Read, Show)
_InlineShapeAtomSequence2 = Core.Name "hydra.shex.syntax.InlineShapeAtomSequence2"
_InlineShapeAtomSequence2_InlineShapeOrRef = Core.Name "InlineShapeOrRef"
_InlineShapeAtomSequence2_NodeConstraint = Core.Name "NodeConstraint"
-- | A component of the ShEx InlineShapeDefinition production
data InlineShapeDefinition =
InlineShapeDefinition {
inlineShapeDefinitionListOfAlts :: [InlineShapeDefinitionListOfAltsElmt],
inlineShapeDefinitionTripleExpression :: (Maybe TripleExpression)}
deriving (Eq, Ord, Read, Show)
_InlineShapeDefinition = Core.Name "hydra.shex.syntax.InlineShapeDefinition"
_InlineShapeDefinition_listOfAlts = Core.Name "listOfAlts"
_InlineShapeDefinition_TripleExpression = Core.Name "TripleExpression"
-- | A synthetic Hydra type representing one element of the ShEx InlineShapeDefinitionListOfAlts production
data InlineShapeDefinitionListOfAltsElmt =
InlineShapeDefinitionListOfAltsElmtIncludeSet IncludeSet |
InlineShapeDefinitionListOfAltsElmtExtraPropertySet ExtraPropertySet |
InlineShapeDefinitionListOfAltsElmtCLOSED
deriving (Eq, Ord, Read, Show)
_InlineShapeDefinitionListOfAltsElmt = Core.Name "hydra.shex.syntax.InlineShapeDefinitionListOfAltsElmt"
_InlineShapeDefinitionListOfAltsElmt_IncludeSet = Core.Name "IncludeSet"
_InlineShapeDefinitionListOfAltsElmt_ExtraPropertySet = Core.Name "ExtraPropertySet"
_InlineShapeDefinitionListOfAltsElmt_CLOSED = Core.Name "CLOSED"
-- | ShEx grammar production: InlineShapeExpression ::= InlineShapeOr
newtype InlineShapeExpression =
InlineShapeExpression {
unInlineShapeExpression :: InlineShapeOr}
deriving (Eq, Ord, Read, Show)
_InlineShapeExpression = Core.Name "hydra.shex.syntax.InlineShapeExpression"
-- | ShEx grammar production: InlineShapeNot ::= 'NOT'? InlineShapeAtom
data InlineShapeNot =
InlineShapeNot {
inlineShapeNotNOT :: (Maybe ()),
inlineShapeNotInlineShapeAtom :: InlineShapeAtom}
deriving (Eq, Ord, Read, Show)
_InlineShapeNot = Core.Name "hydra.shex.syntax.InlineShapeNot"
_InlineShapeNot_NOT = Core.Name "NOT"
_InlineShapeNot_InlineShapeAtom = Core.Name "InlineShapeAtom"
-- | ShEx grammar production: InlineShapeOr ::= InlineShapeAnd ('OR' InlineShapeAnd)*
data InlineShapeOr =
InlineShapeOr {
inlineShapeOrShapeAnd :: ShapeAnd,
inlineShapeOrListOfSequence :: [InlineShapeAnd]}
deriving (Eq, Ord, Read, Show)
_InlineShapeOr = Core.Name "hydra.shex.syntax.InlineShapeOr"
_InlineShapeOr_ShapeAnd = Core.Name "ShapeAnd"
_InlineShapeOr_listOfSequence = Core.Name "listOfSequence"
-- | A component of the ShEx InlineShapeOrRef production
data InlineShapeOrRef =
InlineShapeOrRefInlineShapeDefinition InlineShapeDefinition |
InlineShapeOrRefAtpNameLn AtpNameLn |
InlineShapeOrRefAtpNameNs AtpNameNs |
InlineShapeOrRefSequence ShapeExprLabel
deriving (Eq, Ord, Read, Show)
_InlineShapeOrRef = Core.Name "hydra.shex.syntax.InlineShapeOrRef"
_InlineShapeOrRef_InlineShapeDefinition = Core.Name "InlineShapeDefinition"
_InlineShapeOrRef_AtpNameLn = Core.Name "AtpNameLn"
_InlineShapeOrRef_AtpNameNs = Core.Name "AtpNameNs"
_InlineShapeOrRef_sequence = Core.Name "sequence"
-- | ShEx grammar production: InnerTripleExpr ::= MultiElementGroup | MultiElementOneOf
data InnerTripleExpr =
InnerTripleExprMultiElementGroup MultiElementGroup |
InnerTripleExprMultiElementOneOf MultiElementOneOf
deriving (Eq, Ord, Read, Show)
_InnerTripleExpr = Core.Name "hydra.shex.syntax.InnerTripleExpr"
_InnerTripleExpr_MultiElementGroup = Core.Name "MultiElementGroup"
_InnerTripleExpr_MultiElementOneOf = Core.Name "MultiElementOneOf"
-- | A component of the ShEx Integer production
newtype Integer_ =
Integer_ {
unInteger :: String}
deriving (Eq, Ord, Read, Show)
_Integer = Core.Name "hydra.shex.syntax.Integer"
-- | ShEx grammar production: Iri ::= IriRef | PrefixedName
data Iri =
IriIriRef IriRef |
IriPrefixedName PrefixedName
deriving (Eq, Ord, Read, Show)
_Iri = Core.Name "hydra.shex.syntax.Iri"
_Iri_IriRef = Core.Name "IriRef"
_Iri_PrefixedName = Core.Name "PrefixedName"
-- | A component of the ShEx IriRange production
data IriRange =
IriRangeSeq IriRangeSequence |
IriRangeSequence2 [Exclusion]
deriving (Eq, Ord, Read, Show)
_IriRange = Core.Name "hydra.shex.syntax.IriRange"
_IriRange_seq = Core.Name "seq"
_IriRange_sequence2 = Core.Name "sequence2"
-- | A synthetic Hydra type representing a sequence within the ShEx IriRange production
data IriRangeSequence =
IriRangeSequence {
iriRangeSequenceIri :: Iri,
iriRangeSequenceSequence :: (Maybe [Exclusion])}
deriving (Eq, Ord, Read, Show)
_IriRangeSequence = Core.Name "hydra.shex.syntax.IriRangeSequence"
_IriRangeSequence_Iri = Core.Name "Iri"
_IriRangeSequence_Sequence = Core.Name "Sequence"
-- | A component of the ShEx IriRef production
newtype IriRef =
IriRef {
unIriRef :: [IriRefElmt]}
deriving (Eq, Ord, Read, Show)
_IriRef = Core.Name "hydra.shex.syntax.IriRef"
-- | A synthetic Hydra type representing one element of the ShEx IriRef production
data IriRefElmt =
IriRefElmtRegex String |
IriRefElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_IriRefElmt = Core.Name "hydra.shex.syntax.IriRefElmt"
_IriRefElmt_regex = Core.Name "regex"
_IriRefElmt_Uchar = Core.Name "Uchar"
-- | A component of the ShEx LangTag production
newtype LangTag =
LangTag {
unLangTag :: String}
deriving (Eq, Ord, Read, Show)
_LangTag = Core.Name "hydra.shex.syntax.LangTag"
-- | ShEx grammar production: Literal ::= RdfLiteral | NumericLiteral | BooleanLiteral
data Literal =
LiteralRdfLiteral RdfLiteral |
LiteralNumericLiteral NumericLiteral |
LiteralBooleanLiteral BooleanLiteral
deriving (Eq, Ord, Read, Show)
_Literal = Core.Name "hydra.shex.syntax.Literal"
_Literal_RdfLiteral = Core.Name "RdfLiteral"
_Literal_NumericLiteral = Core.Name "NumericLiteral"
_Literal_BooleanLiteral = Core.Name "BooleanLiteral"
-- | ShEx grammar production: MultiElementGroup ::= UnaryTripleExpr (';' UnaryTripleExpr)+ ';'?
data MultiElementGroup =
MultiElementGroup {
multiElementGroupUnaryTripleExpr :: UnaryTripleExpr,
multiElementGroupListOfSequence :: [UnaryTripleExpr],
multiElementGroupSemi :: (Maybe ())}
deriving (Eq, Ord, Read, Show)
_MultiElementGroup = Core.Name "hydra.shex.syntax.MultiElementGroup"
_MultiElementGroup_UnaryTripleExpr = Core.Name "UnaryTripleExpr"
_MultiElementGroup_listOfSequence = Core.Name "listOfSequence"
_MultiElementGroup_Semi = Core.Name "Semi"
-- | ShEx grammar production: MultiElementOneOf ::= GroupTripleExpr ('|' GroupTripleExpr)+
data MultiElementOneOf =
MultiElementOneOf {
multiElementOneOfGroupTripleExpr :: GroupTripleExpr,
multiElementOneOfListOfSequence :: [GroupTripleExpr]}
deriving (Eq, Ord, Read, Show)
_MultiElementOneOf = Core.Name "hydra.shex.syntax.MultiElementOneOf"
_MultiElementOneOf_GroupTripleExpr = Core.Name "GroupTripleExpr"
_MultiElementOneOf_listOfSequence = Core.Name "listOfSequence"
-- | A component of the ShEx NodeConstraint production
data NodeConstraint =
NodeConstraintSequence [XsFacet] |
NodeConstraintSeq2 NodeConstraintSequence2 |
NodeConstraintSeq3 NodeConstraintSequence3 |
NodeConstraintSeq4 NodeConstraintSequence4 |
NodeConstraintSeq5 NodeConstraintSequence5 |
NodeConstraintListOfXsFacet [XsFacet]
deriving (Eq, Ord, Read, Show)
_NodeConstraint = Core.Name "hydra.shex.syntax.NodeConstraint"
_NodeConstraint_sequence = Core.Name "sequence"
_NodeConstraint_seq2 = Core.Name "seq2"
_NodeConstraint_seq3 = Core.Name "seq3"
_NodeConstraint_seq4 = Core.Name "seq4"
_NodeConstraint_seq5 = Core.Name "seq5"
_NodeConstraint_listOfXsFacet = Core.Name "listOfXsFacet"
-- | A synthetic Hydra type representing a secondary sequence within the ShEx NodeConstraint production
data NodeConstraintSequence2 =
NodeConstraintSequence2 {
nodeConstraintSequence2NonLiteralKind :: NonLiteralKind,
nodeConstraintSequence2ListOfStringFacet :: [StringFacet]}
deriving (Eq, Ord, Read, Show)
_NodeConstraintSequence2 = Core.Name "hydra.shex.syntax.NodeConstraintSequence2"
_NodeConstraintSequence2_NonLiteralKind = Core.Name "NonLiteralKind"
_NodeConstraintSequence2_listOfStringFacet = Core.Name "listOfStringFacet"
-- | A synthetic Hydra type representing a tertiary sequence within the ShEx NodeConstraint production
data NodeConstraintSequence3 =
NodeConstraintSequence3 {
nodeConstraintSequence3Datatype :: Datatype,
nodeConstraintSequence3ListOfXsFacet :: [XsFacet]}
deriving (Eq, Ord, Read, Show)
_NodeConstraintSequence3 = Core.Name "hydra.shex.syntax.NodeConstraintSequence3"
_NodeConstraintSequence3_Datatype = Core.Name "Datatype"
_NodeConstraintSequence3_listOfXsFacet = Core.Name "listOfXsFacet"
-- | A synthetic Hydra type representing a quaternary sequence within the ShEx NodeConstraint production
data NodeConstraintSequence4 =
NodeConstraintSequence4 {
nodeConstraintSequence4ValueSet :: ValueSet,
nodeConstraintSequence4ListOfXsFacet :: [XsFacet]}
deriving (Eq, Ord, Read, Show)
_NodeConstraintSequence4 = Core.Name "hydra.shex.syntax.NodeConstraintSequence4"
_NodeConstraintSequence4_ValueSet = Core.Name "ValueSet"
_NodeConstraintSequence4_listOfXsFacet = Core.Name "listOfXsFacet"
-- | A synthetic Hydra type representing a quinary sequence within the ShEx NodeConstraint production
data NodeConstraintSequence5 =
NodeConstraintSequence5 {
nodeConstraintSequence5ValueSet :: ValueSet,
nodeConstraintSequence5ListOfXsFacet :: [XsFacet]}
deriving (Eq, Ord, Read, Show)
_NodeConstraintSequence5 = Core.Name "hydra.shex.syntax.NodeConstraintSequence5"
_NodeConstraintSequence5_ValueSet = Core.Name "ValueSet"
_NodeConstraintSequence5_listOfXsFacet = Core.Name "listOfXsFacet"
-- | ShEx grammar production: NonLiteralKind ::= 'IRI' | 'BNODE' | 'NONLITERAL'
data NonLiteralKind =
NonLiteralKindIRI |
NonLiteralKindBNODE |
NonLiteralKindNONLITERAL
deriving (Eq, Ord, Read, Show)
_NonLiteralKind = Core.Name "hydra.shex.syntax.NonLiteralKind"
_NonLiteralKind_IRI = Core.Name "IRI"
_NonLiteralKind_BNODE = Core.Name "BNODE"
_NonLiteralKind_NONLITERAL = Core.Name "NONLITERAL"
-- | ShEx grammar production: NotStartAction ::= start | shapeExprDecl
data NotStartAction =
NotStartActionStart ShapeExpression |
NotStartActionDeclaration NotStartActionShapeExprDecl
deriving (Eq, Ord, Read, Show)
_NotStartAction = Core.Name "hydra.shex.syntax.NotStartAction"
_NotStartAction_start = Core.Name "start"
_NotStartAction_declaration = Core.Name "declaration"
-- | A component of the ShEx NotStartActionShapeExprDecl production
data NotStartActionShapeExprDecl =
NotStartActionShapeExprDecl {
notStartActionShapeExprDeclShapeExprLabel :: ShapeExprLabel,
notStartActionShapeExprDeclAlts :: NotStartActionShapeExprDeclAlts}
deriving (Eq, Ord, Read, Show)
_NotStartActionShapeExprDecl = Core.Name "hydra.shex.syntax.NotStartActionShapeExprDecl"
_NotStartActionShapeExprDecl_ShapeExprLabel = Core.Name "ShapeExprLabel"
_NotStartActionShapeExprDecl_alts = Core.Name "alts"
-- | A synthetic Hydra type representing the alternatives of the ShEx NotStartActionShapeExprDecl production
data NotStartActionShapeExprDeclAlts =
NotStartActionShapeExprDeclAltsShapeExpression ShapeExpression |
NotStartActionShapeExprDeclAltsEXTERNAL
deriving (Eq, Ord, Read, Show)
_NotStartActionShapeExprDeclAlts = Core.Name "hydra.shex.syntax.NotStartActionShapeExprDeclAlts"
_NotStartActionShapeExprDeclAlts_ShapeExpression = Core.Name "ShapeExpression"
_NotStartActionShapeExprDeclAlts_EXTERNAL = Core.Name "EXTERNAL"
-- | A component of the ShEx NumericFacet production
data NumericFacet =
NumericFacetSeq NumericFacetSequence |
NumericFacetSeq2 NumericFacetSequence2
deriving (Eq, Ord, Read, Show)
_NumericFacet = Core.Name "hydra.shex.syntax.NumericFacet"
_NumericFacet_seq = Core.Name "seq"
_NumericFacet_seq2 = Core.Name "seq2"
-- | A synthetic Hydra type representing a sequence within the ShEx NumericFacet production
data NumericFacetSequence =
NumericFacetSequence {
numericFacetSequenceNumericRange :: NumericRange,
numericFacetSequenceNumericLiteral :: NumericLiteral}
deriving (Eq, Ord, Read, Show)
_NumericFacetSequence = Core.Name "hydra.shex.syntax.NumericFacetSequence"
_NumericFacetSequence_NumericRange = Core.Name "NumericRange"
_NumericFacetSequence_NumericLiteral = Core.Name "NumericLiteral"
-- | A synthetic Hydra type representing a secondary sequence within the ShEx NumericFacet production
data NumericFacetSequence2 =
NumericFacetSequence2 {
numericFacetSequence2NumericLength :: NumericLength,
numericFacetSequence2Integer :: Integer_}
deriving (Eq, Ord, Read, Show)
_NumericFacetSequence2 = Core.Name "hydra.shex.syntax.NumericFacetSequence2"
_NumericFacetSequence2_NumericLength = Core.Name "NumericLength"
_NumericFacetSequence2_Integer = Core.Name "Integer"
-- | A component of the ShEx NumericLength production
data NumericLength =
NumericLengthTOTALDIGITS |
NumericLengthFRACTIONDIGITS
deriving (Eq, Ord, Read, Show)
_NumericLength = Core.Name "hydra.shex.syntax.NumericLength"
_NumericLength_TOTALDIGITS = Core.Name "TOTALDIGITS"
_NumericLength_FRACTIONDIGITS = Core.Name "FRACTIONDIGITS"
-- | ShEx grammar production: NumericLiteral ::= Integer | Decimal | Double
data NumericLiteral =
NumericLiteralInteger Integer_ |
NumericLiteralDecimal Decimal |
NumericLiteralDouble Double_
deriving (Eq, Ord, Read, Show)
_NumericLiteral = Core.Name "hydra.shex.syntax.NumericLiteral"
_NumericLiteral_Integer = Core.Name "Integer"
_NumericLiteral_Decimal = Core.Name "Decimal"
_NumericLiteral_Double = Core.Name "Double"
-- | A component of the ShEx NumericRange production
data NumericRange =
NumericRangeMININCLUSIVE |
NumericRangeMINEXCLUSIVE |
NumericRangeMAXINCLUSIVE |
NumericRangeMAXEXCLUSIVE
deriving (Eq, Ord, Read, Show)
_NumericRange = Core.Name "hydra.shex.syntax.NumericRange"
_NumericRange_MININCLUSIVE = Core.Name "MININCLUSIVE"
_NumericRange_MINEXCLUSIVE = Core.Name "MINEXCLUSIVE"
_NumericRange_MAXINCLUSIVE = Core.Name "MAXINCLUSIVE"
_NumericRange_MAXEXCLUSIVE = Core.Name "MAXEXCLUSIVE"
-- | ShEx grammar production: OneOfTripleExpr ::= GroupTripleExpr | MultiElementOneOf
data OneOfTripleExpr =
OneOfTripleExprGroupTripleExpr GroupTripleExpr |
OneOfTripleExprMultiElementOneOf MultiElementOneOf
deriving (Eq, Ord, Read, Show)
_OneOfTripleExpr = Core.Name "hydra.shex.syntax.OneOfTripleExpr"
_OneOfTripleExpr_GroupTripleExpr = Core.Name "GroupTripleExpr"
_OneOfTripleExpr_MultiElementOneOf = Core.Name "MultiElementOneOf"
-- | ShEx grammar production: Percent ::= '%' Hex Hex
data Percent =
Percent {
percentHex :: Hex,
percentHex2 :: Hex}
deriving (Eq, Ord, Read, Show)
_Percent = Core.Name "hydra.shex.syntax.Percent"
_Percent_Hex = Core.Name "Hex"
_Percent_Hex2 = Core.Name "Hex2"
-- | ShEx grammar production: Plx ::= Percent | PnLocalEsc
data Plx =
PlxPercent Percent |
PlxPnLocalEsc PnLocalEsc
deriving (Eq, Ord, Read, Show)
_Plx = Core.Name "hydra.shex.syntax.Plx"
_Plx_Percent = Core.Name "Percent"
_Plx_PnLocalEsc = Core.Name "PnLocalEsc"
-- | A component of the ShEx PnChars production
data PnChars =
PnCharsPnCharsU PnCharsU |
PnCharsMinus |
PnCharsRegex String
deriving (Eq, Ord, Read, Show)
_PnChars = Core.Name "hydra.shex.syntax.PnChars"
_PnChars_PnCharsU = Core.Name "PnCharsU"
_PnChars_Minus = Core.Name "Minus"
_PnChars_regex = Core.Name "regex"
-- | A component of the ShEx PnCharsBase production
data PnCharsBase =
PnCharsBaseRegex String |
PnCharsBaseRegex2 String
deriving (Eq, Ord, Read, Show)
_PnCharsBase = Core.Name "hydra.shex.syntax.PnCharsBase"
_PnCharsBase_regex = Core.Name "regex"
_PnCharsBase_regex2 = Core.Name "regex2"
-- | ShEx grammar production: PnCharsU ::= PnCharsBase | '_'
data PnCharsU =
PnCharsUPnCharsBase PnCharsBase |
PnCharsULowbar
deriving (Eq, Ord, Read, Show)
_PnCharsU = Core.Name "hydra.shex.syntax.PnCharsU"
_PnCharsU_PnCharsBase = Core.Name "PnCharsBase"
_PnCharsU_Lowbar = Core.Name "Lowbar"
-- | A component of the ShEx PnLocal production
data PnLocal =
PnLocal {
pnLocalAlts :: PnLocalAlts,
pnLocalSequence :: (Maybe PnLocalSequenceOption)}
deriving (Eq, Ord, Read, Show)
_PnLocal = Core.Name "hydra.shex.syntax.PnLocal"
_PnLocal_alts = Core.Name "alts"
_PnLocal_Sequence = Core.Name "Sequence"
-- | A synthetic Hydra type representing the alternatives of the ShEx PnLocal production
data PnLocalAlts =
PnLocalAltsPnCharsU PnCharsU |
PnLocalAltsColon |
PnLocalAltsRegex String |
PnLocalAltsPlx Plx
deriving (Eq, Ord, Read, Show)
_PnLocalAlts = Core.Name "hydra.shex.syntax.PnLocalAlts"
_PnLocalAlts_PnCharsU = Core.Name "PnCharsU"
_PnLocalAlts_Colon = Core.Name "Colon"
_PnLocalAlts_regex = Core.Name "regex"
_PnLocalAlts_Plx = Core.Name "Plx"
-- | A component of the ShEx PnLocalEsc production
newtype PnLocalEsc =
PnLocalEsc {
unPnLocalEsc :: String}
deriving (Eq, Ord, Read, Show)
_PnLocalEsc = Core.Name "hydra.shex.syntax.PnLocalEsc"
-- | A synthetic Hydra type representing an optional group within the ShEx PnLocal production
data PnLocalSequenceOption =
PnLocalSequenceOption {
pnLocalSequenceOptionListOfAlts :: [PnLocalSequenceOptionListOfAltsElmt],
pnLocalSequenceOptionAlts :: PnLocalSequenceOptionAlts}
deriving (Eq, Ord, Read, Show)
_PnLocalSequenceOption = Core.Name "hydra.shex.syntax.PnLocalSequenceOption"
_PnLocalSequenceOption_listOfAlts = Core.Name "listOfAlts"
_PnLocalSequenceOption_alts = Core.Name "alts"
-- | A synthetic Hydra type representing the alternatives of an optional group within the ShEx PnLocal production
data PnLocalSequenceOptionAlts =
PnLocalSequenceOptionAltsPnChars PnChars |
PnLocalSequenceOptionAltsColon |
PnLocalSequenceOptionAltsPlx Plx
deriving (Eq, Ord, Read, Show)
_PnLocalSequenceOptionAlts = Core.Name "hydra.shex.syntax.PnLocalSequenceOptionAlts"
_PnLocalSequenceOptionAlts_PnChars = Core.Name "PnChars"
_PnLocalSequenceOptionAlts_Colon = Core.Name "Colon"
_PnLocalSequenceOptionAlts_Plx = Core.Name "Plx"
-- | A synthetic Hydra type representing one alternative of an optional repeated group within the ShEx PnLocal production
data PnLocalSequenceOptionListOfAltsElmt =
PnLocalSequenceOptionListOfAltsElmtPnChars PnChars |
PnLocalSequenceOptionListOfAltsElmtPeriod |
PnLocalSequenceOptionListOfAltsElmtColon |
PnLocalSequenceOptionListOfAltsElmtPlx Plx
deriving (Eq, Ord, Read, Show)
_PnLocalSequenceOptionListOfAltsElmt = Core.Name "hydra.shex.syntax.PnLocalSequenceOptionListOfAltsElmt"
_PnLocalSequenceOptionListOfAltsElmt_PnChars = Core.Name "PnChars"
_PnLocalSequenceOptionListOfAltsElmt_Period = Core.Name "Period"
_PnLocalSequenceOptionListOfAltsElmt_Colon = Core.Name "Colon"
_PnLocalSequenceOptionListOfAltsElmt_Plx = Core.Name "Plx"
-- | A component of the ShEx PnPrefix production
data PnPrefix =
PnPrefix {
pnPrefixPnCharsBase :: PnCharsBase,
pnPrefixSequence :: (Maybe PnPrefixSequenceOption)}
deriving (Eq, Ord, Read, Show)
_PnPrefix = Core.Name "hydra.shex.syntax.PnPrefix"
_PnPrefix_PnCharsBase = Core.Name "PnCharsBase"
_PnPrefix_Sequence = Core.Name "Sequence"
-- | A synthetic Hydra type representing an optional group within the ShEx PnPrefix production
data PnPrefixSequenceOption =
PnPrefixSequenceOption {
pnPrefixSequenceOptionAlts :: PnPrefixSequenceOptionAlts,
pnPrefixSequenceOptionPnChars :: PnChars}
deriving (Eq, Ord, Read, Show)
_PnPrefixSequenceOption = Core.Name "hydra.shex.syntax.PnPrefixSequenceOption"
_PnPrefixSequenceOption_alts = Core.Name "alts"
_PnPrefixSequenceOption_PnChars = Core.Name "PnChars"
-- | A synthetic Hydra type representing the alternatives of an optional group within the ShEx PnPrefix production
data PnPrefixSequenceOptionAlts =
PnPrefixSequenceOptionAltsPnChars PnChars |
PnPrefixSequenceOptionAltsPeriod
deriving (Eq, Ord, Read, Show)
_PnPrefixSequenceOptionAlts = Core.Name "hydra.shex.syntax.PnPrefixSequenceOptionAlts"
_PnPrefixSequenceOptionAlts_PnChars = Core.Name "PnChars"
_PnPrefixSequenceOptionAlts_Period = Core.Name "Period"
-- | ShEx grammar production: PnameLn ::= PnameNs PnLocal
data PnameLn =
PnameLn {
pnameLnPnameNs :: PnameNs,
pnameLnPnLocal :: PnLocal}
deriving (Eq, Ord, Read, Show)
_PnameLn = Core.Name "hydra.shex.syntax.PnameLn"
_PnameLn_PnameNs = Core.Name "PnameNs"
_PnameLn_PnLocal = Core.Name "PnLocal"
-- | ShEx grammar production: PnameNs ::= PnPrefix? ':'
newtype PnameNs =
PnameNs {
unPnameNs :: (Maybe PnPrefix)}
deriving (Eq, Ord, Read, Show)
_PnameNs = Core.Name "hydra.shex.syntax.PnameNs"
-- | ShEx grammar production: Predicate ::= Iri | RdfType
data Predicate =
PredicateIri Iri |
PredicateRdfType RdfType
deriving (Eq, Ord, Read, Show)
_Predicate = Core.Name "hydra.shex.syntax.Predicate"
_Predicate_Iri = Core.Name "Iri"
_Predicate_RdfType = Core.Name "RdfType"
-- | ShEx grammar production: PrefixDecl ::= 'PREFIX' PnameNs IriRef
data PrefixDecl =
PrefixDecl {
prefixDeclPnameNs :: PnameNs,
prefixDeclIriRef :: IriRef}
deriving (Eq, Ord, Read, Show)
_PrefixDecl = Core.Name "hydra.shex.syntax.PrefixDecl"
_PrefixDecl_PnameNs = Core.Name "PnameNs"
_PrefixDecl_IriRef = Core.Name "IriRef"
-- | ShEx grammar production: PrefixedName ::= PnameLn | PnameNs
data PrefixedName =
PrefixedNamePnameLn PnameLn |
PrefixedNamePnameNs PnameNs
deriving (Eq, Ord, Read, Show)
_PrefixedName = Core.Name "hydra.shex.syntax.PrefixedName"
_PrefixedName_PnameLn = Core.Name "PnameLn"
_PrefixedName_PnameNs = Core.Name "PnameNs"
-- | ShEx grammar production: RdfLiteral ::= String (LangTag | '^^' Datatype)?
data RdfLiteral =
RdfLiteral {
rdfLiteralString :: String_,
rdfLiteralAlts :: (Maybe RdfLiteralAltsOption)}
deriving (Eq, Ord, Read, Show)
_RdfLiteral = Core.Name "hydra.shex.syntax.RdfLiteral"
_RdfLiteral_String = Core.Name "String"
_RdfLiteral_Alts = Core.Name "Alts"
-- | A synthetic Hydra type representing an optional alternative within the ShEx RdfLiteral production
data RdfLiteralAltsOption =
RdfLiteralAltsOptionLangTag LangTag |
RdfLiteralAltsOptionSequence Datatype
deriving (Eq, Ord, Read, Show)
_RdfLiteralAltsOption = Core.Name "hydra.shex.syntax.RdfLiteralAltsOption"
_RdfLiteralAltsOption_LangTag = Core.Name "LangTag"
_RdfLiteralAltsOption_sequence = Core.Name "sequence"
-- | ShEx grammar production: RdfType ::= 'a'
newtype RdfType =
RdfType {
unRdfType :: ()}
deriving (Eq, Ord, Read, Show)
_RdfType = Core.Name "hydra.shex.syntax.RdfType"
-- | A component of the ShEx Regexp production
data Regexp =
Regexp {
regexpListOfAlts :: [RegexpListOfAltsElmt],
regexpListOfRegex :: [String]}
deriving (Eq, Ord, Read, Show)
_Regexp = Core.Name "hydra.shex.syntax.Regexp"
_Regexp_listOfAlts = Core.Name "listOfAlts"
_Regexp_listOfRegex = Core.Name "listOfRegex"
-- | A synthetic Hydra type representing one element of the ShEx RegexpListOfAlts production
data RegexpListOfAltsElmt =
RegexpListOfAltsElmtRegex String |
RegexpListOfAltsElmtSequence String |
RegexpListOfAltsElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_RegexpListOfAltsElmt = Core.Name "hydra.shex.syntax.RegexpListOfAltsElmt"
_RegexpListOfAltsElmt_regex = Core.Name "regex"
_RegexpListOfAltsElmt_sequence = Core.Name "sequence"
_RegexpListOfAltsElmt_Uchar = Core.Name "Uchar"
-- | A component of the ShEx RepeatRange production
data RepeatRange =
RepeatRange {
repeatRangeInteger :: Integer_,
repeatRangeSequence :: (Maybe (Maybe (Maybe RepeatRangeSequenceOptionOptionOption)))}
deriving (Eq, Ord, Read, Show)
_RepeatRange = Core.Name "hydra.shex.syntax.RepeatRange"
_RepeatRange_Integer = Core.Name "Integer"
_RepeatRange_Sequence = Core.Name "Sequence"
-- | A synthetic Hydra type representing a nested optional group within the ShEx RepeatRange production
data RepeatRangeSequenceOptionOptionOption =
RepeatRangeSequenceOptionOptionOptionInteger Integer_ |
RepeatRangeSequenceOptionOptionOptionAst
deriving (Eq, Ord, Read, Show)
_RepeatRangeSequenceOptionOptionOption = Core.Name "hydra.shex.syntax.RepeatRangeSequenceOptionOptionOption"
_RepeatRangeSequenceOptionOptionOption_Integer = Core.Name "Integer"
_RepeatRangeSequenceOptionOptionOption_Ast = Core.Name "Ast"
-- | ShEx grammar production: SemanticActions ::= CodeDecl*
newtype SemanticActions =
SemanticActions {
unSemanticActions :: [CodeDecl]}
deriving (Eq, Ord, Read, Show)
_SemanticActions = Core.Name "hydra.shex.syntax.SemanticActions"
-- | ShEx grammar production: SenseFlags ::= '^'
newtype SenseFlags =
SenseFlags {
unSenseFlags :: ()}
deriving (Eq, Ord, Read, Show)
_SenseFlags = Core.Name "hydra.shex.syntax.SenseFlags"
-- | ShEx grammar production: ShapeAnd ::= ShapeNot ('AND' ShapeNot)*
data ShapeAnd =
ShapeAnd {
shapeAndShapeNot :: ShapeNot,
shapeAndListOfSequence :: [ShapeNot]}
deriving (Eq, Ord, Read, Show)
_ShapeAnd = Core.Name "hydra.shex.syntax.ShapeAnd"
_ShapeAnd_ShapeNot = Core.Name "ShapeNot"
_ShapeAnd_listOfSequence = Core.Name "listOfSequence"
-- | A component of the ShEx ShapeAtom production
data ShapeAtom =
ShapeAtomSeq ShapeAtomSequence |
ShapeAtomShapeOrRef ShapeOrRef |
ShapeAtomSequence2 ShapeExpression |
ShapeAtomPeriod
deriving (Eq, Ord, Read, Show)
_ShapeAtom = Core.Name "hydra.shex.syntax.ShapeAtom"
_ShapeAtom_seq = Core.Name "seq"
_ShapeAtom_ShapeOrRef = Core.Name "ShapeOrRef"
_ShapeAtom_sequence2 = Core.Name "sequence2"
_ShapeAtom_Period = Core.Name "Period"
-- | A synthetic Hydra type representing a sequence within the ShEx ShapeAtom production
data ShapeAtomSequence =
ShapeAtomSequence {
shapeAtomSequenceNodeConstraint :: NodeConstraint,
shapeAtomSequenceShapeOrRef :: (Maybe ShapeOrRef)}
deriving (Eq, Ord, Read, Show)
_ShapeAtomSequence = Core.Name "hydra.shex.syntax.ShapeAtomSequence"
_ShapeAtomSequence_NodeConstraint = Core.Name "NodeConstraint"
_ShapeAtomSequence_ShapeOrRef = Core.Name "ShapeOrRef"
-- | A component of the ShEx ShapeDefinition production
data ShapeDefinition =
ShapeDefinition {
shapeDefinitionListOfAlts :: [ShapeDefinitionListOfAltsElmt],
shapeDefinitionTripleExpression :: (Maybe TripleExpression),
shapeDefinitionListOfAnnotation :: [Annotation],
shapeDefinitionSemanticActions :: SemanticActions}
deriving (Eq, Ord, Read, Show)
_ShapeDefinition = Core.Name "hydra.shex.syntax.ShapeDefinition"
_ShapeDefinition_listOfAlts = Core.Name "listOfAlts"
_ShapeDefinition_TripleExpression = Core.Name "TripleExpression"
_ShapeDefinition_listOfAnnotation = Core.Name "listOfAnnotation"
_ShapeDefinition_SemanticActions = Core.Name "SemanticActions"
-- | A synthetic Hydra type representing one element of the ShEx ShapeDefinitionListOfAlts production
data ShapeDefinitionListOfAltsElmt =
ShapeDefinitionListOfAltsElmtIncludeSet IncludeSet |
ShapeDefinitionListOfAltsElmtExtraPropertySet ExtraPropertySet |
ShapeDefinitionListOfAltsElmtCLOSED
deriving (Eq, Ord, Read, Show)
_ShapeDefinitionListOfAltsElmt = Core.Name "hydra.shex.syntax.ShapeDefinitionListOfAltsElmt"
_ShapeDefinitionListOfAltsElmt_IncludeSet = Core.Name "IncludeSet"
_ShapeDefinitionListOfAltsElmt_ExtraPropertySet = Core.Name "ExtraPropertySet"
_ShapeDefinitionListOfAltsElmt_CLOSED = Core.Name "CLOSED"
-- | ShEx grammar production: ShapeExprLabel ::= Iri | BlankNode
data ShapeExprLabel =
ShapeExprLabelIri Iri |
ShapeExprLabelBlankNode BlankNode
deriving (Eq, Ord, Read, Show)
_ShapeExprLabel = Core.Name "hydra.shex.syntax.ShapeExprLabel"
_ShapeExprLabel_Iri = Core.Name "Iri"
_ShapeExprLabel_BlankNode = Core.Name "BlankNode"
-- | ShEx grammar production: ShapeExpression ::= ShapeOr
newtype ShapeExpression =
ShapeExpression {
unShapeExpression :: ShapeOr}
deriving (Eq, Ord, Read, Show)
_ShapeExpression = Core.Name "hydra.shex.syntax.ShapeExpression"
-- | ShEx grammar production: ShapeNot ::= 'NOT'? ShapeAtom
data ShapeNot =
ShapeNot {
shapeNotNOT :: (Maybe ()),
shapeNotShapeAtom :: ShapeAtom}
deriving (Eq, Ord, Read, Show)
_ShapeNot = Core.Name "hydra.shex.syntax.ShapeNot"
_ShapeNot_NOT = Core.Name "NOT"
_ShapeNot_ShapeAtom = Core.Name "ShapeAtom"
-- | ShEx grammar production: ShapeOr ::= ShapeAnd ('OR' ShapeAnd)*
data ShapeOr =
ShapeOr {
shapeOrShapeAnd :: ShapeAnd,
shapeOrListOfSequence :: [ShapeAnd]}
deriving (Eq, Ord, Read, Show)
_ShapeOr = Core.Name "hydra.shex.syntax.ShapeOr"
_ShapeOr_ShapeAnd = Core.Name "ShapeAnd"
_ShapeOr_listOfSequence = Core.Name "listOfSequence"
-- | A component of the ShEx ShapeOrRef production
data ShapeOrRef =
ShapeOrRefShapeDefinition ShapeDefinition |
ShapeOrRefAtpNameLn AtpNameLn |
ShapeOrRefAtpNameNs AtpNameNs |
ShapeOrRefSequence ShapeExprLabel
deriving (Eq, Ord, Read, Show)
_ShapeOrRef = Core.Name "hydra.shex.syntax.ShapeOrRef"
_ShapeOrRef_ShapeDefinition = Core.Name "ShapeDefinition"
_ShapeOrRef_AtpNameLn = Core.Name "AtpNameLn"
_ShapeOrRef_AtpNameNs = Core.Name "AtpNameNs"
_ShapeOrRef_sequence = Core.Name "sequence"
-- | ShEx grammar production: ShexDoc ::= Directive* ((NotStartAction | StartActions) Statement*)?
data ShexDoc =
ShexDoc {
shexDocListOfDirective :: [Directive],
shexDocSequence :: (Maybe ShexDocSequenceOption),
shexDocPrefixDecl :: PrefixDecl}
deriving (Eq, Ord, Read, Show)
_ShexDoc = Core.Name "hydra.shex.syntax.ShexDoc"
_ShexDoc_listOfDirective = Core.Name "listOfDirective"
_ShexDoc_Sequence = Core.Name "Sequence"
_ShexDoc_PrefixDecl = Core.Name "PrefixDecl"
-- | A synthetic Hydra type representing an optional group within the ShEx ShexDoc production
data ShexDocSequenceOption =
ShexDocSequenceOption {
shexDocSequenceOptionAlts :: ShexDocSequenceOptionAlts,
shexDocSequenceOptionListOfStatement :: [Statement]}
deriving (Eq, Ord, Read, Show)
_ShexDocSequenceOption = Core.Name "hydra.shex.syntax.ShexDocSequenceOption"
_ShexDocSequenceOption_alts = Core.Name "alts"
_ShexDocSequenceOption_listOfStatement = Core.Name "listOfStatement"
-- | A synthetic Hydra type representing the alternatives of an optional group within the ShEx ShexDoc production
data ShexDocSequenceOptionAlts =
ShexDocSequenceOptionAltsNotStartAction NotStartAction |
ShexDocSequenceOptionAltsStartActions StartActions
deriving (Eq, Ord, Read, Show)
_ShexDocSequenceOptionAlts = Core.Name "hydra.shex.syntax.ShexDocSequenceOptionAlts"
_ShexDocSequenceOptionAlts_NotStartAction = Core.Name "NotStartAction"
_ShexDocSequenceOptionAlts_StartActions = Core.Name "StartActions"
-- | ShEx grammar production: SingleElementGroup ::= UnaryTripleExpr ';'?
data SingleElementGroup =
SingleElementGroup {
singleElementGroupUnaryTripleExpr :: UnaryTripleExpr,
singleElementGroupSemi :: (Maybe ())}
deriving (Eq, Ord, Read, Show)
_SingleElementGroup = Core.Name "hydra.shex.syntax.SingleElementGroup"
_SingleElementGroup_UnaryTripleExpr = Core.Name "UnaryTripleExpr"
_SingleElementGroup_Semi = Core.Name "Semi"
-- | ShEx grammar production: StartActions ::= CodeDecl+
newtype StartActions =
StartActions {
unStartActions :: [CodeDecl]}
deriving (Eq, Ord, Read, Show)
_StartActions = Core.Name "hydra.shex.syntax.StartActions"
-- | ShEx grammar production: Statement ::= Directive | NotStartAction
data Statement =
StatementDirective Directive |
StatementNotStartAction NotStartAction
deriving (Eq, Ord, Read, Show)
_Statement = Core.Name "hydra.shex.syntax.Statement"
_Statement_Directive = Core.Name "Directive"
_Statement_NotStartAction = Core.Name "NotStartAction"
-- | A component of the ShEx String production
data String_ =
StringStringLiteral1 StringLiteral1 |
StringStringLiteralLong1 StringLiteralLong1 |
StringStringLiteral2 StringLiteral2 |
StringStringLiteralLong2 StringLiteralLong2
deriving (Eq, Ord, Read, Show)
_String = Core.Name "hydra.shex.syntax.String"
_String_StringLiteral1 = Core.Name "StringLiteral1"
_String_StringLiteralLong1 = Core.Name "StringLiteralLong1"
_String_StringLiteral2 = Core.Name "StringLiteral2"
_String_StringLiteralLong2 = Core.Name "StringLiteralLong2"
-- | ShEx grammar production: StringFacet ::= StringLength Integer | Regexp
data StringFacet =
StringFacetSeq StringFacetSequence |
StringFacetRegexp Regexp
deriving (Eq, Ord, Read, Show)
_StringFacet = Core.Name "hydra.shex.syntax.StringFacet"
_StringFacet_seq = Core.Name "seq"
_StringFacet_Regexp = Core.Name "Regexp"
-- | A synthetic Hydra type representing a sequence within the ShEx StringFacet production
data StringFacetSequence =
StringFacetSequence {
stringFacetSequenceStringLength :: StringLength,
stringFacetSequenceInteger :: Integer_}
deriving (Eq, Ord, Read, Show)
_StringFacetSequence = Core.Name "hydra.shex.syntax.StringFacetSequence"
_StringFacetSequence_StringLength = Core.Name "StringLength"
_StringFacetSequence_Integer = Core.Name "Integer"
-- | ShEx grammar production: StringLength ::= 'LENGTH' | 'MINLENGTH' | 'MAXLENGTH'
data StringLength =
StringLengthLENGTH |
StringLengthMINLENGTH |
StringLengthMAXLENGTH
deriving (Eq, Ord, Read, Show)
_StringLength = Core.Name "hydra.shex.syntax.StringLength"
_StringLength_LENGTH = Core.Name "LENGTH"
_StringLength_MINLENGTH = Core.Name "MINLENGTH"
_StringLength_MAXLENGTH = Core.Name "MAXLENGTH"
-- | A component of the ShEx StringLiteral1 production
newtype StringLiteral1 =
StringLiteral1 {
unStringLiteral1 :: [StringLiteral1Elmt]}
deriving (Eq, Ord, Read, Show)
_StringLiteral1 = Core.Name "hydra.shex.syntax.StringLiteral1"
-- | A synthetic Hydra type representing one element of the ShEx StringLiteral1 production
data StringLiteral1Elmt =
StringLiteral1ElmtRegex String |
StringLiteral1ElmtEchar Echar |
StringLiteral1ElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_StringLiteral1Elmt = Core.Name "hydra.shex.syntax.StringLiteral1Elmt"
_StringLiteral1Elmt_regex = Core.Name "regex"
_StringLiteral1Elmt_Echar = Core.Name "Echar"
_StringLiteral1Elmt_Uchar = Core.Name "Uchar"
-- | A component of the ShEx StringLiteral2 production
newtype StringLiteral2 =
StringLiteral2 {
unStringLiteral2 :: [StringLiteral2Elmt]}
deriving (Eq, Ord, Read, Show)
_StringLiteral2 = Core.Name "hydra.shex.syntax.StringLiteral2"
-- | A synthetic Hydra type representing one element of the ShEx StringLiteral2 production
data StringLiteral2Elmt =
StringLiteral2ElmtRegex String |
StringLiteral2ElmtEchar Echar |
StringLiteral2ElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_StringLiteral2Elmt = Core.Name "hydra.shex.syntax.StringLiteral2Elmt"
_StringLiteral2Elmt_regex = Core.Name "regex"
_StringLiteral2Elmt_Echar = Core.Name "Echar"
_StringLiteral2Elmt_Uchar = Core.Name "Uchar"
-- | A component of the ShEx StringLiteralLong1 production
newtype StringLiteralLong1 =
StringLiteralLong1 {
unStringLiteralLong1 :: [StringLiteralLong1Elmt]}
deriving (Eq, Ord, Read, Show)
_StringLiteralLong1 = Core.Name "hydra.shex.syntax.StringLiteralLong1"
-- | A synthetic Hydra type representing one element of the ShEx StringLiteralLong1 production
data StringLiteralLong1Elmt =
StringLiteralLong1ElmtSeq StringLiteralLong1ElmtSequence |
StringLiteralLong1ElmtEchar Echar |
StringLiteralLong1ElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_StringLiteralLong1Elmt = Core.Name "hydra.shex.syntax.StringLiteralLong1Elmt"
_StringLiteralLong1Elmt_seq = Core.Name "seq"
_StringLiteralLong1Elmt_Echar = Core.Name "Echar"
_StringLiteralLong1Elmt_Uchar = Core.Name "Uchar"
-- | A synthetic Hydra type representing a sequence within an element of the ShEx StringLiteralLong1 production
data StringLiteralLong1ElmtSequence =
StringLiteralLong1ElmtSequence {
stringLiteralLong1ElmtSequenceAlts :: (Maybe StringLiteralLong1ElmtSequenceAltsOption),
stringLiteralLong1ElmtSequenceRegex :: String}
deriving (Eq, Ord, Read, Show)
_StringLiteralLong1ElmtSequence = Core.Name "hydra.shex.syntax.StringLiteralLong1ElmtSequence"
_StringLiteralLong1ElmtSequence_Alts = Core.Name "Alts"
_StringLiteralLong1ElmtSequence_regex = Core.Name "regex"
-- | A synthetic Hydra type representing an optional alternative of an element of the ShEx StringLiteralLong1 production
data StringLiteralLong1ElmtSequenceAltsOption =
StringLiteralLong1ElmtSequenceAltsOptionApos |
StringLiteralLong1ElmtSequenceAltsOptionSeq StringLiteralLong1ElmtSequenceAltsOptionSequence
deriving (Eq, Ord, Read, Show)
_StringLiteralLong1ElmtSequenceAltsOption = Core.Name "hydra.shex.syntax.StringLiteralLong1ElmtSequenceAltsOption"
_StringLiteralLong1ElmtSequenceAltsOption_Apos = Core.Name "Apos"
_StringLiteralLong1ElmtSequenceAltsOption_seq = Core.Name "seq"
-- | A synthetic Hydra type representing a sequence within an optional alternative of an element of the ShEx StringLiteralLong1 production
type StringLiteralLong1ElmtSequenceAltsOptionSequence = ()
_StringLiteralLong1ElmtSequenceAltsOptionSequence =
Core.Name "hydra.shex.syntax.StringLiteralLong1ElmtSequenceAltsOptionSequence"
-- | A component of the ShEx StringLiteralLong2 production
newtype StringLiteralLong2 =
StringLiteralLong2 {
unStringLiteralLong2 :: [StringLiteralLong2Elmt]}
deriving (Eq, Ord, Read, Show)
_StringLiteralLong2 = Core.Name "hydra.shex.syntax.StringLiteralLong2"
-- | A synthetic Hydra type representing one element of the ShEx StringLiteralLong2 production
data StringLiteralLong2Elmt =
StringLiteralLong2ElmtSeq StringLiteralLong2ElmtSequence |
StringLiteralLong2ElmtEchar Echar |
StringLiteralLong2ElmtUchar Uchar
deriving (Eq, Ord, Read, Show)
_StringLiteralLong2Elmt = Core.Name "hydra.shex.syntax.StringLiteralLong2Elmt"
_StringLiteralLong2Elmt_seq = Core.Name "seq"
_StringLiteralLong2Elmt_Echar = Core.Name "Echar"
_StringLiteralLong2Elmt_Uchar = Core.Name "Uchar"
-- | A synthetic Hydra type representing a sequence within an element of the ShEx StringLiteralLong2 production
data StringLiteralLong2ElmtSequence =
StringLiteralLong2ElmtSequence {
stringLiteralLong2ElmtSequenceAlts :: (Maybe StringLiteralLong2ElmtSequenceAltsOption),
stringLiteralLong2ElmtSequenceRegex :: String}
deriving (Eq, Ord, Read, Show)
_StringLiteralLong2ElmtSequence = Core.Name "hydra.shex.syntax.StringLiteralLong2ElmtSequence"
_StringLiteralLong2ElmtSequence_Alts = Core.Name "Alts"
_StringLiteralLong2ElmtSequence_regex = Core.Name "regex"
-- | A synthetic Hydra type representing an optional alternative of an element of the ShEx StringLiteralLong2 production
data StringLiteralLong2ElmtSequenceAltsOption =
StringLiteralLong2ElmtSequenceAltsOptionQuot |
StringLiteralLong2ElmtSequenceAltsOptionSeq StringLiteralLong2ElmtSequenceAltsOptionSequence
deriving (Eq, Ord, Read, Show)
_StringLiteralLong2ElmtSequenceAltsOption = Core.Name "hydra.shex.syntax.StringLiteralLong2ElmtSequenceAltsOption"
_StringLiteralLong2ElmtSequenceAltsOption_Quot = Core.Name "Quot"
_StringLiteralLong2ElmtSequenceAltsOption_seq = Core.Name "seq"
-- | A synthetic Hydra type representing a sequence within an optional alternative of an element of the ShEx StringLiteralLong2 production
type StringLiteralLong2ElmtSequenceAltsOptionSequence = ()
_StringLiteralLong2ElmtSequenceAltsOptionSequence =
Core.Name "hydra.shex.syntax.StringLiteralLong2ElmtSequenceAltsOptionSequence"
-- | A component of the ShEx TripleConstraint production
data TripleConstraint =
TripleConstraint {
tripleConstraintSenseFlags :: (Maybe SenseFlags),
tripleConstraintPredicate :: Predicate,
tripleConstraintInlineShapeExpression :: InlineShapeExpression,
tripleConstraintCardinality :: (Maybe Cardinality),
tripleConstraintListOfAnnotation :: [Annotation],
tripleConstraintSemanticActions :: SemanticActions}
deriving (Eq, Ord, Read, Show)
_TripleConstraint = Core.Name "hydra.shex.syntax.TripleConstraint"
_TripleConstraint_SenseFlags = Core.Name "SenseFlags"
_TripleConstraint_Predicate = Core.Name "Predicate"
_TripleConstraint_InlineShapeExpression = Core.Name "InlineShapeExpression"
_TripleConstraint_Cardinality = Core.Name "Cardinality"
_TripleConstraint_listOfAnnotation = Core.Name "listOfAnnotation"
_TripleConstraint_SemanticActions = Core.Name "SemanticActions"
-- | ShEx grammar production: TripleExprLabel ::= Iri | BlankNode
data TripleExprLabel =
TripleExprLabelIri Iri |
TripleExprLabelBlankNode BlankNode
deriving (Eq, Ord, Read, Show)
_TripleExprLabel = Core.Name "hydra.shex.syntax.TripleExprLabel"
_TripleExprLabel_Iri = Core.Name "Iri"
_TripleExprLabel_BlankNode = Core.Name "BlankNode"
-- | ShEx grammar production: TripleExpression ::= OneOfTripleExpr
newtype TripleExpression =
TripleExpression {
unTripleExpression :: OneOfTripleExpr}
deriving (Eq, Ord, Read, Show)
_TripleExpression = Core.Name "hydra.shex.syntax.TripleExpression"
-- | A component of the ShEx Uchar production
data Uchar =
UcharSeq UcharSequence |
UcharSeq2 UcharSequence2
deriving (Eq, Ord, Read, Show)
_Uchar = Core.Name "hydra.shex.syntax.Uchar"
_Uchar_seq = Core.Name "seq"
_Uchar_seq2 = Core.Name "seq2"
-- | A synthetic Hydra type representing a sequence within the ShEx Uchar production
data UcharSequence =
UcharSequence {
ucharSequenceHex :: Hex,
ucharSequenceHex2 :: Hex,
ucharSequenceHex3 :: Hex,
ucharSequenceHex4 :: Hex}
deriving (Eq, Ord, Read, Show)
_UcharSequence = Core.Name "hydra.shex.syntax.UcharSequence"
_UcharSequence_Hex = Core.Name "Hex"
_UcharSequence_Hex2 = Core.Name "Hex2"
_UcharSequence_Hex3 = Core.Name "Hex3"
_UcharSequence_Hex4 = Core.Name "Hex4"
-- | A synthetic Hydra type representing a secondary sequence within the ShEx Uchar production
data UcharSequence2 =
UcharSequence2 {
ucharSequence2Hex :: Hex,
ucharSequence2Hex2 :: Hex,
ucharSequence2Hex3 :: Hex,
ucharSequence2Hex4 :: Hex,
ucharSequence2Hex5 :: Hex,
ucharSequence2Hex6 :: Hex,
ucharSequence2Hex7 :: Hex,
ucharSequence2Hex8 :: Hex}
deriving (Eq, Ord, Read, Show)
_UcharSequence2 = Core.Name "hydra.shex.syntax.UcharSequence2"
_UcharSequence2_Hex = Core.Name "Hex"
_UcharSequence2_Hex2 = Core.Name "Hex2"
_UcharSequence2_Hex3 = Core.Name "Hex3"
_UcharSequence2_Hex4 = Core.Name "Hex4"
_UcharSequence2_Hex5 = Core.Name "Hex5"
_UcharSequence2_Hex6 = Core.Name "Hex6"
_UcharSequence2_Hex7 = Core.Name "Hex7"
_UcharSequence2_Hex8 = Core.Name "Hex8"
-- | A component of the ShEx UnaryTripleExpr production
data UnaryTripleExpr =
UnaryTripleExprSeq UnaryTripleExprSequence |
UnaryTripleExprInclude Include
deriving (Eq, Ord, Read, Show)
_UnaryTripleExpr = Core.Name "hydra.shex.syntax.UnaryTripleExpr"
_UnaryTripleExpr_seq = Core.Name "seq"
_UnaryTripleExpr_Include = Core.Name "Include"
-- | A synthetic Hydra type representing a sequence within the ShEx UnaryTripleExpr production
data UnaryTripleExprSequence =
UnaryTripleExprSequence {
unaryTripleExprSequenceSequence :: (Maybe TripleExprLabel),
unaryTripleExprSequenceAlts :: UnaryTripleExprSequenceAlts}
deriving (Eq, Ord, Read, Show)
_UnaryTripleExprSequence = Core.Name "hydra.shex.syntax.UnaryTripleExprSequence"
_UnaryTripleExprSequence_Sequence = Core.Name "Sequence"
_UnaryTripleExprSequence_alts = Core.Name "alts"
-- | A synthetic Hydra type representing the alternatives of the ShEx UnaryTripleExprSequence production
data UnaryTripleExprSequenceAlts =
UnaryTripleExprSequenceAltsTripleConstraint TripleConstraint |
UnaryTripleExprSequenceAltsBracketedTripleExpr BracketedTripleExpr
deriving (Eq, Ord, Read, Show)
_UnaryTripleExprSequenceAlts = Core.Name "hydra.shex.syntax.UnaryTripleExprSequenceAlts"
_UnaryTripleExprSequenceAlts_TripleConstraint = Core.Name "TripleConstraint"
_UnaryTripleExprSequenceAlts_BracketedTripleExpr = Core.Name "BracketedTripleExpr"
-- | ShEx grammar production: ValueSet ::= '[' ValueSetValue* ']'
newtype ValueSet =
ValueSet {
unValueSet :: [ValueSetValue]}
deriving (Eq, Ord, Read, Show)
_ValueSet = Core.Name "hydra.shex.syntax.ValueSet"
-- | ShEx grammar production: ValueSetValue ::= IriRange | Literal
data ValueSetValue =
ValueSetValueIriRange IriRange |
ValueSetValueLiteral Literal
deriving (Eq, Ord, Read, Show)
_ValueSetValue = Core.Name "hydra.shex.syntax.ValueSetValue"
_ValueSetValue_IriRange = Core.Name "IriRange"
_ValueSetValue_Literal = Core.Name "Literal"
-- | ShEx grammar production: XsFacet ::= StringFacet | NumericFacet
data XsFacet =
XsFacetStringFacet StringFacet |
XsFacetNumericFacet NumericFacet
deriving (Eq, Ord, Read, Show)
_XsFacet = Core.Name "hydra.shex.syntax.XsFacet"
_XsFacet_StringFacet = Core.Name "StringFacet"
_XsFacet_NumericFacet = Core.Name "NumericFacet"