# SHACL Shapes generated by @inferal-relay/rdf-emitter

@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix tsps: <https://relay.inferal.com/ontology/typespec/shapes/> .
@prefix tspv: <https://relay.inferal.com/ontology/typespec/versioning/> .
@prefix adm: <https://ontology.inferal.com/modules/advertising-measurement/> .
@prefix aent: <https://ontology.inferal.com/modules/advertising-entity/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix meta: <https://relay.inferal.com/ontology/meta/> .
@prefix schema: <https://schema.org/> .

# Class hierarchy
meta:Ad rdfs:subClassOf aent:Ad .
meta:AdAccount rdfs:subClassOf aent:AdAccount .
meta:AdSet rdfs:subClassOf aent:TargetingGroup .
meta:Campaign rdfs:subClassOf aent:Campaign .
meta:AdCreative rdfs:subClassOf aent:Creative .

<https://relay.inferal.com/ontology/meta/shapes> a tsps:ShapeGeneration ;
  tsps:shapeReferenceChainLimit 5 ;
  tsps:omittedShapeReferenceCount 36
  ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdAccountShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdLabelShape ;
    tsps:referenceTo meta:AdAccountShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdPlacePageSetShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdSetShape ;
    tsps:referenceTo meta:AdPromotedObjectShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdSetShape ;
    tsps:referenceTo meta:AdSetShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdShape ;
    tsps:referenceTo meta:AdCreativeShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdShape ;
    tsps:referenceTo meta:AdSetShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdShape ;
    tsps:referenceTo meta:AdShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AdStudyShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:AudioAssetShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:BusinessShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:CampaignShape ;
    tsps:referenceTo meta:AdPromotedObjectShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:CampaignShape ;
    tsps:referenceTo meta:CampaignShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:CollaborativeAdsShareSettingsShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:EducationExperienceShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:EducationExperienceShape ;
    tsps:referenceTo meta:UserShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ExperienceShape ;
    tsps:referenceTo meta:UserShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ExtendedCreditAllocationConfigShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ExtendedCreditShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ExtendedCreditShape ;
    tsps:referenceTo meta:ExtendedCreditAllocationConfigShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:IGCommentShape ;
    tsps:referenceTo meta:IGUserShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:IGMediaShape ;
    tsps:referenceTo meta:IGUserShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:IGUserShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:IGUserShape ;
    tsps:referenceTo meta:IGUserShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:MailingAddressShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ManagedPartnerBusinessShape ;
    tsps:referenceTo meta:AdAccountShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ManagedPartnerBusinessShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:PageCategoryShape ;
    tsps:referenceTo meta:PageCategoryShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:PageShape ;
    tsps:referenceTo meta:AdSetShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:PageShape ;
    tsps:referenceTo meta:AdVideoShape ;
    tsps:omittedBecause "over-long"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:PageShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:PageShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:ProductCatalogShape ;
    tsps:referenceTo meta:BusinessShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:StoreCatalogSettingsShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:UserShape ;
    tsps:referenceTo meta:PageShape ;
    tsps:omittedBecause "cycle"
  ] ;
  tsps:omittedShapeReference [
    tsps:referenceFrom meta:UserShape ;
    tsps:referenceTo meta:UserShape ;
    tsps:omittedBecause "cycle"
  ] .

# Shape for Ad
meta:AdShape a sh:NodeShape ;
  sh:targetClass meta:Ad ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/accountId> ;
    sh:name "account id" ;
    sh:description "Identifies the ad account associated with the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adActiveTime> ;
    sh:name "ad active time" ;
    sh:description "Represents the ad's active time." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adReviewFeedback> ;
    sh:name "ad review feedback" ;
    sh:description "Contains review feedback for the ad." ;
    sh:node meta:AdgroupReviewFeedbackShape ;
    sh:class meta:AdgroupReviewFeedback ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adScheduleEndTime> ;
    sh:name "ad schedule end time" ;
    sh:description "Represents the scheduled UTC end time for the ad." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adScheduleStartTime> ;
    sh:name "ad schedule start time" ;
    sh:description "Represents the scheduled UTC start time for the ad." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists labels associated with the ad." ;
    sh:node meta:AdLabelShape ;
    sh:class meta:AdLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adset> ;
    sh:name "adset" ;
    sh:description "Represents the ad set associated with the ad." ;
    sh:class meta:AdSet ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/adsetId> ;
    sh:name "adset id" ;
    sh:description "Identifies the ad set associated with the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/bidAmount> ;
    sh:name "bid amount" ;
    sh:description "Represents the ad's bid amount." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/bidInfo> ;
    sh:name "bid info" ;
    sh:description "Contains bid information associated with the ad." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/bidType> ;
    sh:name "bid type" ;
    sh:description "Indicates the ad's bid type, such as CPC, CPM, CPA, ABSOLUTE_OCPM, or MULTI_PREMIUM." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ABSOLUTE_OCPM" "CPA" "CPC" "CPM" "MULTI_PREMIUM" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/campaign> ;
    sh:name "campaign" ;
    sh:description "Represents the campaign associated with the ad." ;
    sh:node meta:CampaignShape ;
    sh:class meta:Campaign ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/campaignId> ;
    sh:name "campaign id" ;
    sh:description "Identifies the campaign associated with the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/configuredStatus> ;
    sh:name "configured status" ;
    sh:description "Indicates the ad's configured status as ACTIVE, ARCHIVED, DELETED, or PAUSED." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "PAUSED" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/conversionDomain> ;
    sh:name "conversion domain" ;
    sh:description "Represents the domain associated with the ad's conversions." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/conversionSpecs> ;
    sh:name "conversion specs" ;
    sh:description "Lists conversion specifications associated with the ad." ;
    sh:node meta:ConversionActionQueryShape ;
    sh:class meta:ConversionActionQuery ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents when the ad was created in UTC." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/creative> ;
    sh:name "creative" ;
    sh:description "Represents the creative associated with the ad." ;
    sh:class meta:AdCreative ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/creativeAssetGroupsSpec> ;
    sh:name "creative asset groups spec" ;
    sh:description "Contains the ad's creative asset group specification." ;
    sh:node meta:AdCreativeAssetGroupsSpecShape ;
    sh:class meta:AdCreativeAssetGroupsSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/demolinkHash> ;
    sh:name "demolink hash" ;
    sh:description "Represents the hash associated with the ad's demo link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/displaySequence> ;
    sh:name "display sequence" ;
    sh:description "Represents the ad's display sequence." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/effectiveStatus> ;
    sh:name "effective status" ;
    sh:description "Indicates the ad's effective status, including ACTIVE, PAUSED, ARCHIVED, DELETED, or a review, billing, issue, or parent-level paused state." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ADSET_PAUSED" "ARCHIVED" "CAMPAIGN_PAUSED" "DELETED" "DISAPPROVED" "IN_PROCESS" "PAUSED" "PENDING_BILLING_INFO" "PENDING_REVIEW" "PREAPPROVED" "WITH_ISSUES" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/engagementAudience> ;
    sh:name "engagement audience" ;
    sh:description "Indicates whether the ad is associated with an engagement audience." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/failedDeliveryChecks> ;
    sh:name "failed delivery checks" ;
    sh:description "Lists delivery checks that the ad has failed." ;
    sh:node meta:DeliveryCheckShape ;
    sh:class meta:DeliveryCheck ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/issuesInfo> ;
    sh:name "issues info" ;
    sh:description "Lists issue information associated with the ad." ;
    sh:node meta:AdgroupIssuesInfoShape ;
    sh:class meta:AdgroupIssuesInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/lastUpdatedByAppId> ;
    sh:name "last updated by app id" ;
    sh:description "Identifies the app that last updated the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/name> ;
    sh:name "name" ;
    sh:description "Represents the ad's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/placement> ;
    sh:name "placement" ;
    sh:description "Represents the ad's placement." ;
    sh:node meta:PlacementShape ;
    sh:class meta:Placement ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/previewShareableLink> ;
    sh:name "preview shareable link" ;
    sh:description "Contains a shareable link for previewing the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/priority> ;
    sh:name "priority" ;
    sh:description "Represents the ad's priority." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/recommendations> ;
    sh:name "recommendations" ;
    sh:description "Lists recommendations associated with the ad." ;
    sh:node meta:AdRecommendationShape ;
    sh:class meta:AdRecommendation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/sourceAd> ;
    sh:name "source ad" ;
    sh:description "Represents the source ad associated with the ad." ;
    sh:class meta:Ad ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/sourceAdId> ;
    sh:name "source ad id" ;
    sh:description "Identifies the source ad associated with the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/status> ;
    sh:name "status" ;
    sh:description "Indicates the ad's status as ACTIVE, ARCHIVED, DELETED, or PAUSED." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "PAUSED" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/targeting> ;
    sh:name "targeting" ;
    sh:description "Represents the ad's targeting configuration." ;
    sh:node meta:TargetingShape ;
    sh:class meta:Targeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/trackingAndConversionWithDefaults> ;
    sh:name "tracking and conversion with defaults" ;
    sh:description "Contains the ad's tracking and conversion information with defaults." ;
    sh:node meta:TrackingAndConversionWithDefaultsShape ;
    sh:class meta:TrackingAndConversionWithDefaults ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/trackingSpecs> ;
    sh:name "tracking specs" ;
    sh:description "Lists tracking specifications associated with the ad." ;
    sh:node meta:ConversionActionQueryShape ;
    sh:class meta:ConversionActionQuery ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Ad/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Represents when the ad was last updated in UTC." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] .

# Shape for Adgroup Review Feedback
meta:AdgroupReviewFeedbackShape a sh:NodeShape ;
  sh:targetClass meta:AdgroupReviewFeedback ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupReviewFeedback/global> ;
    sh:name "global" ;
    sh:description "Contains review feedback that applies globally to the ad group." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupReviewFeedback/placementSpecific> ;
    sh:name "placement specific" ;
    sh:description "Contains review feedback specific to placements." ;
    sh:node meta:AdgroupPlacementSpecificReviewFeedbackShape ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Adgroup Placement Specific Review Feedback
meta:AdgroupPlacementSpecificReviewFeedbackShape a sh:NodeShape ;
  sh:targetClass meta:AdgroupPlacementSpecificReviewFeedback ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin> ;
    sh:name "account admin" ;
    sh:description "Contains placement-specific review feedback for account administrators." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/ad> ;
    sh:name "ad" ;
    sh:description "Contains placement-specific review feedback for ads." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences> ;
    sh:name "ads conversion experiences" ;
    sh:description "Contains placement-specific review feedback for ads conversion experiences." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/b2c> ;
    sh:name "b2c" ;
    sh:description "Contains placement-specific review feedback for B2C." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified> ;
    sh:name "b2c commerce unified" ;
    sh:description "Contains placement-specific review feedback for unified B2C commerce." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/bsg> ;
    sh:name "bsg" ;
    sh:description "Contains placement-specific review feedback for BSG." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity> ;
    sh:name "city community" ;
    sh:description "Contains placement-specific review feedback for city community." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/commerce> ;
    sh:name "commerce" ;
    sh:description "Contains placement-specific review feedback for commerce." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/compromise> ;
    sh:name "compromise" ;
    sh:description "Contains placement-specific review feedback for compromise." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals> ;
    sh:name "daily deals" ;
    sh:description "Contains placement-specific review feedback for daily deals." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy> ;
    sh:name "daily deals legacy" ;
    sh:description "Contains placement-specific review feedback for legacy daily deals." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/dpa> ;
    sh:name "dpa" ;
    sh:description "Contains placement-specific review feedback for DPA." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright> ;
    sh:name "dri copyright" ;
    sh:description "Contains placement-specific review feedback for DRI copyright." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit> ;
    sh:name "dri counterfeit" ;
    sh:description "Contains placement-specific review feedback for DRI counterfeit." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/facebook> ;
    sh:name "facebook" ;
    sh:description "Contains placement-specific review feedback for Facebook." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping> ;
    sh:name "facebook pages live shopping" ;
    sh:description "Contains placement-specific review feedback for Facebook Pages live shopping." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork> ;
    sh:name "independent work" ;
    sh:description "Contains placement-specific review feedback for independent work." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/instagram> ;
    sh:name "instagram" ;
    sh:description "Contains placement-specific review feedback for Instagram." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop> ;
    sh:name "instagram shop" ;
    sh:description "Contains placement-specific review feedback for Instagram Shop." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch> ;
    sh:name "job search" ;
    sh:description "Contains placement-specific review feedback for job search." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot> ;
    sh:name "lead gen honeypot" ;
    sh:description "Contains placement-specific review feedback for lead generation honeypot." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace> ;
    sh:name "marketplace" ;
    sh:description "Contains placement-specific review feedback for Marketplace." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals> ;
    sh:name "marketplace home rentals" ;
    sh:description "Contains placement-specific review feedback for Marketplace home rentals." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales> ;
    sh:name "marketplace home sales" ;
    sh:description "Contains placement-specific review feedback for Marketplace home sales." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors> ;
    sh:name "marketplace motors" ;
    sh:description "Contains placement-specific review feedback for Marketplace Motors." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops> ;
    sh:name "marketplace shops" ;
    sh:description "Contains placement-specific review feedback for Marketplace Shops." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements> ;
    sh:name "max review placements" ;
    sh:description "Contains placement-specific review feedback for Max review placements." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods> ;
    sh:name "neighborhoods" ;
    sh:description "Contains placement-specific review feedback for Neighborhoods." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin> ;
    sh:name "page admin" ;
    sh:description "Contains placement-specific review feedback for page administrators." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/product> ;
    sh:name "product" ;
    sh:description "Contains placement-specific review feedback for products." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/productService> ;
    sh:name "product service" ;
    sh:description "Contains placement-specific review feedback for products and services." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/profile> ;
    sh:name "profile" ;
    sh:description "Contains placement-specific review feedback for profiles." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/seller> ;
    sh:name "seller" ;
    sh:description "Contains placement-specific review feedback for sellers." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/shops> ;
    sh:name "shops" ;
    sh:description "Contains placement-specific review feedback for Shops." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality> ;
    sh:name "traffic quality" ;
    sh:description "Contains placement-specific review feedback for traffic quality." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent> ;
    sh:name "unified commerce content" ;
    sh:description "Contains placement-specific review feedback for unified commerce content." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp> ;
    sh:name "whatsapp" ;
    sh:description "Contains placement-specific review feedback for WhatsApp." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Label
meta:AdLabelShape a sh:NodeShape ;
  sh:targetClass meta:AdLabel ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdLabel/account> ;
    sh:name "account" ;
    sh:description "Identifies the ad account associated with the label." ;
    sh:class meta:AdAccount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdLabel/createdTime> ;
    sh:name "created time" ;
    sh:description "Records when the ad label was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdLabel/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad label." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdLabel/name> ;
    sh:name "name" ;
    sh:description "Provides the name of the ad label." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdLabel/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Records when the ad label was last updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Account
meta:AdAccountShape a sh:NodeShape ;
  sh:targetClass meta:AdAccount ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/accountId> ;
    sh:name "account id" ;
    sh:description "Identifies the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/accountStatus> ;
    sh:name "account status" ;
    sh:description "Represents the ad account's status." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/adAccountPromotableObjects> ;
    sh:name "ad account promotable objects" ;
    sh:description "Contains objects that the ad account can promote." ;
    sh:node meta:AdAccountPromotableObjectsShape ;
    sh:class meta:AdAccountPromotableObjects ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/age> ;
    sh:name "age" ;
    sh:description "Represents the ad account's age." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/agencyClientDeclaration> ;
    sh:name "agency client declaration" ;
    sh:description "Contains the ad account's agency client declaration." ;
    sh:node meta:AgencyClientDeclarationShape ;
    sh:class meta:AgencyClientDeclaration ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/allCapabilities> ;
    sh:name "all capabilities" ;
    sh:description "Lists all capabilities associated with the ad account." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/amountSpent> ;
    sh:name "amount spent" ;
    sh:description "Represents the amount spent by the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/attributionSpec> ;
    sh:name "attribution spec" ;
    sh:description "Lists the ad account's attribution specifications." ;
    sh:node meta:AttributionSpecShape ;
    sh:class meta:AttributionSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/balance> ;
    sh:name "balance" ;
    sh:description "Represents the ad account's balance." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/brandSafetyContentFilterLevels> ;
    sh:name "brand safety content filter levels" ;
    sh:description "Lists the ad account's brand safety content filter levels." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/business> ;
    sh:name "business" ;
    sh:description "Represents the business associated with the ad account." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessCity> ;
    sh:name "business city" ;
    sh:description "Represents the city in the ad account's business address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessCountryCode> ;
    sh:name "business country code" ;
    sh:description "Represents the country code in the ad account's business address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessName> ;
    sh:name "business name" ;
    sh:description "Represents the business name associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessState> ;
    sh:name "business state" ;
    sh:description "Represents the state in the ad account's business address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessStreet> ;
    sh:name "business street" ;
    sh:description "Represents the street in the ad account's business address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessStreet2> ;
    sh:name "business street2" ;
    sh:description "Represents the second street line in the ad account's business address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/businessZip> ;
    sh:name "business zip" ;
    sh:description "Represents the ZIP code in the ad account's business address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/canCreateBrandLiftStudy> ;
    sh:name "can create brand lift study" ;
    sh:description "Indicates whether the ad account can create a brand lift study." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/capabilities> ;
    sh:name "capabilities" ;
    sh:description "Lists capabilities associated with the ad account." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents when the ad account was created in UTC." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/currency> ;
    sh:name "currency" ;
    sh:description "Represents the currency associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/customAudienceInfo> ;
    sh:name "custom audience info" ;
    sh:description "Contains custom audience information for the ad account." ;
    sh:node meta:CustomAudienceGroupShape ;
    sh:class meta:CustomAudienceGroup ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/defaultDsaBeneficiary> ;
    sh:name "default dsa beneficiary" ;
    sh:description "Represents the ad account's default DSA beneficiary." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/defaultDsaPayor> ;
    sh:name "default dsa payor" ;
    sh:description "Represents the ad account's default DSA payor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/disableReason> ;
    sh:name "disable reason" ;
    sh:description "Represents the reason associated with disabling the ad account." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/endAdvertiser> ;
    sh:name "end advertiser" ;
    sh:description "Identifies the end advertiser associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/endAdvertiserName> ;
    sh:name "end advertiser name" ;
    sh:description "Represents the name of the end advertiser associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/existingCustomers> ;
    sh:name "existing customers" ;
    sh:description "Lists existing customers associated with the ad account." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/expiredFundingSourceDetails> ;
    sh:name "expired funding source details" ;
    sh:description "Contains details about the ad account's expired funding source." ;
    sh:node meta:FundingSourceDetailsShape ;
    sh:class meta:FundingSourceDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/extendedCreditInvoiceGroup> ;
    sh:name "extended credit invoice group" ;
    sh:description "Represents the extended credit invoice group associated with the ad account." ;
    sh:node meta:ExtendedCreditInvoiceGroupShape ;
    sh:class meta:ExtendedCreditInvoiceGroup ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/failedDeliveryChecks> ;
    sh:name "failed delivery checks" ;
    sh:description "Lists delivery checks that the ad account has failed." ;
    sh:node meta:DeliveryCheckShape ;
    sh:class meta:DeliveryCheck ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/fbEntity> ;
    sh:name "fb entity" ;
    sh:description "Represents the Facebook entity associated with the ad account." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/fundingSource> ;
    sh:name "funding source" ;
    sh:description "Represents the ad account's funding source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/fundingSourceDetails> ;
    sh:name "funding source details" ;
    sh:description "Contains details about the ad account's funding source." ;
    sh:node meta:FundingSourceDetailsShape ;
    sh:class meta:FundingSourceDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/hasMigratedPermissions> ;
    sh:name "has migrated permissions" ;
    sh:description "Indicates whether the ad account has migrated permissions." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/hasPageAuthorizedAdaccount> ;
    sh:name "has page authorized adaccount" ;
    sh:description "Indicates whether a Page has authorized the ad account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/ioNumber> ;
    sh:name "io number" ;
    sh:description "Represents the insertion order number associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isAttributionSpecSystemDefault> ;
    sh:name "is attribution spec system default" ;
    sh:description "Indicates whether the ad account's attribution specification is the system default." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isBaSkipDelayedEligible> ;
    sh:name "is ba skip delayed eligible" ;
    sh:description "Indicates whether the ad account is eligible to skip delayed BA processing." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isDirectDealsEnabled> ;
    sh:name "is direct deals enabled" ;
    sh:description "Indicates whether direct deals are enabled for the ad account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isIn3dsAuthorizationEnabledMarket> ;
    sh:name "is in3ds authorization enabled market" ;
    sh:description "Indicates whether the ad account is in a market where 3DS authorization is enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isNotificationsEnabled> ;
    sh:name "is notifications enabled" ;
    sh:description "Indicates whether notifications are enabled for the ad account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isPersonal> ;
    sh:name "is personal" ;
    sh:description "Represents whether the ad account is personal." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isPrepayAccount> ;
    sh:name "is prepay account" ;
    sh:description "Indicates whether the ad account is a prepaid account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/isTaxIdRequired> ;
    sh:name "is tax id required" ;
    sh:description "Indicates whether a tax ID is required for the ad account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/liableAddress> ;
    sh:name "liable address" ;
    sh:description "Contains the liable address associated with the ad account." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/lineNumbers> ;
    sh:name "line numbers" ;
    sh:description "Lists line numbers associated with the ad account." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/mediaAgency> ;
    sh:name "media agency" ;
    sh:description "Represents the media agency associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/minCampaignGroupSpendCap> ;
    sh:name "min campaign group spend cap" ;
    sh:description "Represents the minimum campaign group spend cap for the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/minDailyBudget> ;
    sh:name "min daily budget" ;
    sh:description "Represents the minimum daily budget for the ad account." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/name> ;
    sh:name "name" ;
    sh:description "Represents the ad account's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/offsitePixelsTosAccepted> ;
    sh:name "offsite pixels tos accepted" ;
    sh:description "Indicates whether the ad account has accepted the offsite pixels terms of service." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/owner> ;
    sh:name "owner" ;
    sh:description "Identifies the owner of the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/ownerBusiness> ;
    sh:name "owner business" ;
    sh:description "Represents the business that owns the ad account." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/partner> ;
    sh:name "partner" ;
    sh:description "Represents the partner associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/rfSpec> ;
    sh:name "rf spec" ;
    sh:description "Contains the ad account's reach and frequency specification." ;
    sh:node meta:ReachFrequencySpecShape ;
    sh:class meta:ReachFrequencySpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/sendBillToAddress> ;
    sh:name "send bill to address" ;
    sh:description "Contains the address to which bills for the ad account are sent." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/showCheckoutExperience> ;
    sh:name "show checkout experience" ;
    sh:description "Indicates whether the checkout experience is shown for the ad account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/soldToAddress> ;
    sh:name "sold to address" ;
    sh:description "Contains the sold-to address associated with the ad account." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/spendCap> ;
    sh:name "spend cap" ;
    sh:description "Represents the spending cap associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/taxId> ;
    sh:name "tax id" ;
    sh:description "Represents the tax identification value associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/taxIdStatus> ;
    sh:name "tax id status" ;
    sh:description "Represents the status of the ad account's tax identification information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/taxIdType> ;
    sh:name "tax id type" ;
    sh:description "Represents the type of tax identification associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/timezoneId> ;
    sh:name "timezone id" ;
    sh:description "Represents the time zone identifier associated with the ad account." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/timezoneName> ;
    sh:name "timezone name" ;
    sh:description "Represents the name of the time zone associated with the ad account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/timezoneOffsetHoursUtc> ;
    sh:name "timezone offset hours utc" ;
    sh:description "Represents the ad account's time zone offset from UTC in hours." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/tosAccepted> ;
    sh:name "tos accepted" ;
    sh:description "Represents terms-of-service acceptance information for the ad account." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/userAccessExpireTime> ;
    sh:name "user access expire time" ;
    sh:description "Represents when user access to the ad account expires." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/userTasks> ;
    sh:name "user tasks" ;
    sh:description "Represents tasks associated with users of the ad account." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/userTosAccepted> ;
    sh:name "user tos accepted" ;
    sh:description "Represents terms-of-service acceptance information for users of the ad account." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/viewableBusiness> ;
    sh:name "viewable business" ;
    sh:description "Represents the business viewable through the ad account." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/opportunityScore> ;
    sh:name "opportunity score" ;
    sh:description "Represents the opportunity score associated with the ad account." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/marketingMessagesSettings> ;
    sh:name "marketing messages settings" ;
    sh:description "Represents the marketing messages settings for the ad account." ;
    sh:node meta:AdAccountMarketingMessagesSettingsShape ;
    sh:class meta:AdAccountMarketingMessagesSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/offsiteCloSignalStatus> ;
    sh:name "offsite clo signal status" ;
    sh:description "Represents the status of the ad account's offsite CLO signal." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Account Promotable Objects
meta:AdAccountPromotableObjectsShape a sh:NodeShape ;
  sh:targetClass meta:AdAccountPromotableObjects ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccountPromotableObjects/promotableAppIds> ;
    sh:name "promotable app ids" ;
    sh:description "Represents the app identifiers for apps promotable through the ad account." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccountPromotableObjects/promotablePageIds> ;
    sh:name "promotable page ids" ;
    sh:description "Represents the Page identifiers for Pages promotable through the ad account." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccountPromotableObjects/promotableUrls> ;
    sh:name "promotable urls" ;
    sh:description "Represents the URLs promotable through the ad account." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Agency Client Declaration
meta:AgencyClientDeclarationShape a sh:NodeShape ;
  sh:targetClass meta:AgencyClientDeclaration ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/agencyRepresentingClient> ;
    sh:name "agency representing client" ;
    sh:description "Represents the agency's representation of the client." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientBasedInFrance> ;
    sh:name "client based in france" ;
    sh:description "Represents whether the client is based in France." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientCity> ;
    sh:name "client city" ;
    sh:description "Represents the client's city." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientCountryCode> ;
    sh:name "client country code" ;
    sh:description "Represents the client's country code." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientEmailAddress> ;
    sh:name "client email address" ;
    sh:description "Represents the client's email address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientName> ;
    sh:name "client name" ;
    sh:description "Represents the client's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientPostalCode> ;
    sh:name "client postal code" ;
    sh:description "Represents the client's postal code." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientProvince> ;
    sh:name "client province" ;
    sh:description "Represents the client's province." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientStreet> ;
    sh:name "client street" ;
    sh:description "Represents the client's street address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/clientStreet2> ;
    sh:name "client street2" ;
    sh:description "Represents the second line of the client's street address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/hasWrittenMandateFromAdvertiser> ;
    sh:name "has written mandate from advertiser" ;
    sh:description "Represents whether the agency has a written mandate from the advertiser." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgencyClientDeclaration/isClientPayingInvoices> ;
    sh:name "is client paying invoices" ;
    sh:description "Represents whether the client is paying invoices." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Attribution Spec
meta:AttributionSpecShape a sh:NodeShape ;
  sh:targetClass meta:AttributionSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AttributionSpec/eventType> ;
    sh:name "event type" ;
    sh:description "Represents the event type used by the attribution specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AttributionSpec/windowDays> ;
    sh:name "window days" ;
    sh:description "Represents the number of days in the attribution window." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Business
meta:BusinessShape a sh:NodeShape ;
  sh:targetClass meta:Business ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/blockOfflineAnalytics> ;
    sh:name "block offline analytics" ;
    sh:description "Indicates whether offline analytics are blocked for the business." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/collaborativeAdsManagedPartnerBusinessInfo> ;
    sh:name "collaborative ads managed partner business info" ;
    sh:description "Represents managed partner business information for collaborative ads." ;
    sh:node meta:ManagedPartnerBusinessShape ;
    sh:class meta:ManagedPartnerBusiness ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/collaborativeAdsManagedPartnerEligibility> ;
    sh:name "collaborative ads managed partner eligibility" ;
    sh:description "Represents the business's managed partner eligibility for collaborative ads." ;
    sh:node meta:BusinessManagedPartnerEligibilityShape ;
    sh:class meta:BusinessManagedPartnerEligibility ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/collaborativeAdsPartnerPremiumOptions> ;
    sh:name "collaborative ads partner premium options" ;
    sh:description "Represents premium partner options for collaborative ads." ;
    sh:node meta:BusinessPartnerPremiumOptionsShape ;
    sh:class meta:BusinessPartnerPremiumOptions ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/createdBy> ;
    sh:name "created by" ;
    sh:description "Represents the entity that created the business." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents when the business was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/extendedUpdatedTime> ;
    sh:name "extended updated time" ;
    sh:description "Represents the extended update time of the business." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/id> ;
    sh:name "id" ;
    sh:description "Identifies the business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/isHidden> ;
    sh:name "is hidden" ;
    sh:description "Indicates whether the business is hidden." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/link> ;
    sh:name "link" ;
    sh:description "Represents the link associated with the business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/marketingMessagesOnboardingStatus> ;
    sh:name "marketing messages onboarding status" ;
    sh:description "Represents the business's onboarding status for marketing messages." ;
    sh:node meta:MarketingMessagesOnboardingStatusShape ;
    sh:class meta:MarketingMessagesOnboardingStatus ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/name> ;
    sh:name "name" ;
    sh:description "The name associated with the business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/paymentAccountId> ;
    sh:name "payment account id" ;
    sh:description "The identifier of the business's payment account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/primaryPage> ;
    sh:name "primary page" ;
    sh:description "The page designated as the business's primary page." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/profilePictureUri> ;
    sh:name "profile picture uri" ;
    sh:description "The URI of the business's profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/timezoneId> ;
    sh:name "timezone id" ;
    sh:description "The identifier of the business's time zone." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/twoFactorType> ;
    sh:name "two factor type" ;
    sh:description "The type of two-factor authentication associated with the business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/updatedBy> ;
    sh:name "updated by" ;
    sh:description "The object representing who or what last updated the business." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/updatedTime> ;
    sh:name "updated time" ;
    sh:description "The time when the business was last updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/userAccessExpireTime> ;
    sh:name "user access expire time" ;
    sh:description "The time when user access to the business expires." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/verificationStatus> ;
    sh:name "verification status" ;
    sh:description "The business's verification status, such as pending, rejected, or verified." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "expired" "failed" "ineligible" "not_verified" "pending" "pending_need_more_info" "pending_submission" "rejected" "revoked" "verified" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/vertical> ;
    sh:name "vertical" ;
    sh:description "The business's vertical." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/verticalId> ;
    sh:name "vertical id" ;
    sh:description "The identifier of the business's vertical." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Business/whatsappBusinessManagerMessagingLimit> ;
    sh:name "whatsapp business manager messaging limit" ;
    sh:description "The WhatsApp Business Manager messaging limit tier associated with the business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "TIER_100K" "TIER_10K" "TIER_250" "TIER_2K" "TIER_UNLIMITED" "UNTIERED" ) ;
  ] .

# Shape for Managed Partner Business
meta:ManagedPartnerBusinessShape a sh:NodeShape ;
  sh:targetClass meta:ManagedPartnerBusiness ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/adAccount> ;
    sh:name "ad account" ;
    sh:description "Contains the advertising account associated with the managed partner business." ;
    sh:class meta:AdAccount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/catalogSegment> ;
    sh:name "catalog segment" ;
    sh:description "Contains the product catalog associated with the managed partner business." ;
    sh:node meta:ProductCatalogShape ;
    sh:class meta:ProductCatalog ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/extendedCredit> ;
    sh:name "extended credit" ;
    sh:description "Contains the extended credit associated with the managed partner business." ;
    sh:node meta:ManagedPartnerExtendedCreditShape ;
    sh:class meta:ManagedPartnerExtendedCredit ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/page> ;
    sh:name "page" ;
    sh:description "Contains the Page associated with the managed partner business." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/sellerBusinessInfo> ;
    sh:name "seller business info" ;
    sh:description "Contains seller business information associated with the managed partner business." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/sellerBusinessStatus> ;
    sh:name "seller business status" ;
    sh:description "Represents the seller business status of the managed partner business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerBusiness/template> ;
    sh:name "template" ;
    sh:description "Contains templates associated with the managed partner business." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Product Catalog
meta:ProductCatalogShape a sh:NodeShape ;
  sh:targetClass meta:ProductCatalog ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/adAccountToCollaborativeAdsShareSettings> ;
    sh:name "ad account to collaborative ads share settings" ;
    sh:description "Collaborative ads sharing settings associated with ad accounts for the product catalog." ;
    sh:node meta:CollaborativeAdsShareSettingsShape ;
    sh:class meta:CollaborativeAdsShareSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/agencyCollaborativeAdsShareSettings> ;
    sh:name "agency collaborative ads share settings" ;
    sh:description "Collaborative ads sharing settings associated with an agency for the product catalog." ;
    sh:node meta:CollaborativeAdsShareSettingsShape ;
    sh:class meta:CollaborativeAdsShareSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/business> ;
    sh:name "business" ;
    sh:description "The business associated with the product catalog." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/catalogStore> ;
    sh:name "catalog store" ;
    sh:description "Store catalog settings associated with the product catalog." ;
    sh:node meta:StoreCatalogSettingsShape ;
    sh:class meta:StoreCatalogSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/commerceMerchantSettings> ;
    sh:name "commerce merchant settings" ;
    sh:description "Commerce merchant settings associated with the product catalog." ;
    sh:node meta:CommerceMerchantSettingsShape ;
    sh:class meta:CommerceMerchantSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/creatorUser> ;
    sh:name "creator user" ;
    sh:description "The user who created the product catalog." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/daDisplaySettings> ;
    sh:name "da display settings" ;
    sh:description "Image display settings for the product catalog." ;
    sh:node meta:ProductCatalogImageSettingsShape ;
    sh:class meta:ProductCatalogImageSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/defaultImageUrl> ;
    sh:name "default image url" ;
    sh:description "The URL of the default image for the product catalog." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/fallbackImageUrl> ;
    sh:name "fallback image url" ;
    sh:description "URLs of fallback images for the product catalog." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/feedCount> ;
    sh:name "feed count" ;
    sh:description "The number of feeds associated with the product catalog." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/id> ;
    sh:name "id" ;
    sh:description "The identifier of the product catalog." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/isCatalogSegment> ;
    sh:name "is catalog segment" ;
    sh:description "Indicates whether the product catalog is a catalog segment." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/isLocalCatalog> ;
    sh:name "is local catalog" ;
    sh:description "Indicates whether the product catalog is local." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/name> ;
    sh:name "name" ;
    sh:description "The name of the product catalog." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/ownerBusiness> ;
    sh:name "owner business" ;
    sh:description "The business that owns the product catalog." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/productCount> ;
    sh:name "product count" ;
    sh:description "The number of products in the product catalog." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/showAssignPermissions> ;
    sh:name "show assign permissions" ;
    sh:description "Indicates whether assign permissions are shown for the product catalog." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/storeCatalogSettings> ;
    sh:name "store catalog settings" ;
    sh:description "Store catalog settings associated with the product catalog." ;
    sh:node meta:StoreCatalogSettingsShape ;
    sh:class meta:StoreCatalogSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/userAccessExpireTime> ;
    sh:name "user access expire time" ;
    sh:description "The time at which user access to the product catalog expires." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalog/vertical> ;
    sh:name "vertical" ;
    sh:description "The vertical associated with the product catalog." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Collaborative Ads Share Settings
meta:CollaborativeAdsShareSettingsShape a sh:NodeShape ;
  sh:targetClass meta:CollaborativeAdsShareSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CollaborativeAdsShareSettings/agencyBusiness> ;
    sh:name "agency business" ;
    sh:description "The agency business associated with the collaborative ads sharing settings." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CollaborativeAdsShareSettings/id> ;
    sh:name "id" ;
    sh:description "The identifier of the collaborative ads sharing settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CollaborativeAdsShareSettings/productCatalogProxyId> ;
    sh:name "product catalog proxy id" ;
    sh:description "The identifier of the product catalog proxy associated with the sharing settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CollaborativeAdsShareSettings/utmCampaign> ;
    sh:name "utm campaign" ;
    sh:description "The UTM campaign value in the sharing settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CollaborativeAdsShareSettings/utmMedium> ;
    sh:name "utm medium" ;
    sh:description "The UTM medium value in the sharing settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CollaborativeAdsShareSettings/utmSource> ;
    sh:name "utm source" ;
    sh:description "The UTM source value in the sharing settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Store Catalog Settings
meta:StoreCatalogSettingsShape a sh:NodeShape ;
  sh:targetClass meta:StoreCatalogSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.StoreCatalogSettings/id> ;
    sh:name "id" ;
    sh:description "Identifies the store catalog settings record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.StoreCatalogSettings/page> ;
    sh:name "page" ;
    sh:description "Represents the Page associated with the store catalog settings." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Page
meta:PageShape a sh:NodeShape ;
  sh:targetClass meta:Page ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/about> ;
    sh:name "about" ;
    sh:description "Represents information about the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/accessToken> ;
    sh:name "access token" ;
    sh:description "Represents the access token associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/adCampaign> ;
    sh:name "ad campaign" ;
    sh:description "Contains the ad set associated with the Page." ;
    sh:class meta:AdSet ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/affiliation> ;
    sh:name "affiliation" ;
    sh:description "Represents the affiliation associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/appId> ;
    sh:name "app id" ;
    sh:description "Identifies the app associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/artistsWeLike> ;
    sh:name "artists we like" ;
    sh:description "Represents the artists the Page likes." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/attire> ;
    sh:name "attire" ;
    sh:description "Represents the attire associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/availablePromoOfferIds> ;
    sh:name "available promo offer ids" ;
    sh:description "Contains identifiers for promotional offers available to the Page." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/awards> ;
    sh:name "awards" ;
    sh:description "Represents the awards associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/bandInterests> ;
    sh:name "band interests" ;
    sh:description "Represents the band's interests associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/bandMembers> ;
    sh:name "band members" ;
    sh:description "Represents the band members associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/bestPage> ;
    sh:name "best page" ;
    sh:description "Contains the Page identified as the best Page." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/bio> ;
    sh:name "bio" ;
    sh:description "Represents the biography associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/birthday> ;
    sh:name "birthday" ;
    sh:description "Represents the birthday associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/bookingAgent> ;
    sh:name "booking agent" ;
    sh:description "Represents the booking agent associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/breakingNewsUsage> ;
    sh:name "breaking news usage" ;
    sh:description "Represents information about the Page's breaking-news usage." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/built> ;
    sh:name "built" ;
    sh:description "Represents when the Page was built." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/business> ;
    sh:name "business" ;
    sh:description "Represents business information associated with the Page." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/canCheckin> ;
    sh:name "can checkin" ;
    sh:description "Indicates whether check-ins can be made on the Page." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/canPost> ;
    sh:name "can post" ;
    sh:description "Indicates whether posts can be made on the Page." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/category> ;
    sh:name "category" ;
    sh:description "Represents the Page's category." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/categoryList> ;
    sh:name "category list" ;
    sh:description "Represents the categories associated with the Page." ;
    sh:node meta:PageCategoryShape ;
    sh:class meta:PageCategory ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/checkins> ;
    sh:name "checkins" ;
    sh:description "Represents the number of check-ins associated with the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/companyOverview> ;
    sh:name "company overview" ;
    sh:description "Represents the Page's company overview." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/connectedInstagramAccount> ;
    sh:name "connected instagram account" ;
    sh:description "Represents an Instagram account connected to the Page." ;
    sh:node meta:IGUserShape ;
    sh:class meta:IGUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/connectedPageBackedInstagramAccount> ;
    sh:name "connected page backed instagram account" ;
    sh:description "Represents an Instagram account backed by and connected to the Page." ;
    sh:node meta:IGUserShape ;
    sh:class meta:IGUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/contactAddress> ;
    sh:name "contact address" ;
    sh:description "Represents the Page's contact mailing address." ;
    sh:node meta:MailingAddressShape ;
    sh:class meta:MailingAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/copyrightAttributionInsights> ;
    sh:name "copyright attribution insights" ;
    sh:description "Represents copyright attribution insights for the Page." ;
    sh:node meta:CopyrightAttributionInsightsShape ;
    sh:class meta:CopyrightAttributionInsights ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/copyrightWhitelistedIgPartners> ;
    sh:name "copyright whitelisted ig partners" ;
    sh:description "Represents Instagram partners that are whitelisted for the Page's copyright." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/countryPageLikes> ;
    sh:name "country page likes" ;
    sh:description "Represents the number of Page likes by country." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/cover> ;
    sh:name "cover" ;
    sh:description "Represents the Page's cover photo." ;
    sh:node meta:CoverPhotoShape ;
    sh:class meta:CoverPhoto ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/culinaryTeam> ;
    sh:name "culinary team" ;
    sh:description "Represents the Page's culinary team." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/currentLocation> ;
    sh:name "current location" ;
    sh:description "Represents the Page's current location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/deliveryAndPickupOptionInfo> ;
    sh:name "delivery and pickup option info" ;
    sh:description "Represents information about the Page's delivery and pickup options." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/description> ;
    sh:name "description" ;
    sh:description "Represents the Page's description." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/descriptionHtml> ;
    sh:name "description html" ;
    sh:description "Represents the Page's description in HTML form." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/differentlyOpenOfferings> ;
    sh:name "differently open offerings" ;
    sh:description "Represents offerings whose opening arrangements differ for the Page." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/directedBy> ;
    sh:name "directed by" ;
    sh:description "Represents the person or people associated with directing the Page's subject." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/displaySubtext> ;
    sh:name "display subtext" ;
    sh:description "Represents supplementary text displayed for the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/displayedMessageResponseTime> ;
    sh:name "displayed message response time" ;
    sh:description "Represents the message response time displayed for the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/doesViewerHavePagePermissionLinkIg> ;
    sh:name "does viewer have page permission link ig" ;
    sh:description "Indicates whether the viewer has the Page permission to link Instagram." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/emails> ;
    sh:name "emails" ;
    sh:description "Represents email addresses associated with the Page." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/engagement> ;
    sh:name "engagement" ;
    sh:description "Represents engagement information for the Page." ;
    sh:node meta:EngagementShape ;
    sh:class meta:Engagement ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/fanCount> ;
    sh:name "fan count" ;
    sh:description "Represents the number of fans associated with the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/featuredVideo> ;
    sh:name "featured video" ;
    sh:description "Represents the video featured by the Page." ;
    sh:class meta:AdVideo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/features> ;
    sh:name "features" ;
    sh:description "Represents features associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/followersCount> ;
    sh:name "followers count" ;
    sh:description "Represents the number of followers of the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/foodStyles> ;
    sh:name "food styles" ;
    sh:description "Represents food styles associated with the Page." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/founded> ;
    sh:name "founded" ;
    sh:description "Represents when the Page's subject was founded." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/generalInfo> ;
    sh:name "general info" ;
    sh:description "Represents general information about the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/generalManager> ;
    sh:name "general manager" ;
    sh:description "Represents the Page's general manager." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/genre> ;
    sh:name "genre" ;
    sh:description "Represents the Page's genre." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/globalBrandPageName> ;
    sh:name "global brand page name" ;
    sh:description "Represents the global brand Page name associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/globalBrandRootId> ;
    sh:name "global brand root id" ;
    sh:description "Represents the identifier of the global brand root associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hasAddedApp> ;
    sh:name "has added app" ;
    sh:description "Indicates whether an app has been added to the Page." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hasLeadAccess> ;
    sh:name "has lead access" ;
    sh:description "Represents the Page's lead access status." ;
    sh:node meta:HasLeadAccessShape ;
    sh:class meta:HasLeadAccess ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hasTransitionedToNewPageExperience> ;
    sh:name "has transitioned to new page experience" ;
    sh:description "Indicates whether the Page has transitioned to the new Page experience." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hasWhatsappBusinessNumber> ;
    sh:name "has whatsapp business number" ;
    sh:description "Indicates whether the Page has a WhatsApp Business number." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hasWhatsappNumber> ;
    sh:name "has whatsapp number" ;
    sh:description "Indicates whether the Page has a WhatsApp number." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hometown> ;
    sh:name "hometown" ;
    sh:description "Represents the Page's hometown." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/hours> ;
    sh:name "hours" ;
    sh:description "Represents the Page's hours." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/id> ;
    sh:name "id" ;
    sh:description "Represents the Page's identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/impressum> ;
    sh:name "impressum" ;
    sh:description "Represents the Page's impressum information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/influences> ;
    sh:name "influences" ;
    sh:description "Represents influences associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/instagramBusinessAccount> ;
    sh:name "instagram business account" ;
    sh:description "Represents the Instagram business account associated with the Page." ;
    sh:node meta:IGUserShape ;
    sh:class meta:IGUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isAlwaysOpen> ;
    sh:name "is always open" ;
    sh:description "Indicates whether the Page is always open." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isCallingEligible> ;
    sh:name "is calling eligible" ;
    sh:description "Indicates whether the Page is eligible for calling." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isChain> ;
    sh:name "is chain" ;
    sh:description "Indicates whether the Page represents a chain." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isCommunityPage> ;
    sh:name "is community page" ;
    sh:description "Indicates whether the Page is a community Page." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isEligibleForBrandedContent> ;
    sh:name "is eligible for branded content" ;
    sh:description "Indicates whether the Page is eligible for branded content." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isEligibleForDisableConnectIgBtnForNonPageAdminAmWeb> ;
    sh:name "is eligible for disable connect ig btn for non page admin am web" ;
    sh:description "Indicates whether the Page is eligible to disable the connect-Instagram button for non-Page administrators on the web." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isMessengerBotGetStartedEnabled> ;
    sh:name "is messenger bot get started enabled" ;
    sh:description "Indicates whether the Messenger bot Get Started feature is enabled for the Page." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isMessengerPlatformBot> ;
    sh:name "is messenger platform bot" ;
    sh:description "Indicates whether the Page is a Messenger platform bot." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isOwned> ;
    sh:name "is owned" ;
    sh:description "Indicates whether the Page is owned." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isPermanentlyClosed> ;
    sh:name "is permanently closed" ;
    sh:description "Indicates whether the Page is permanently closed." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isPublished> ;
    sh:name "is published" ;
    sh:description "Indicates whether the Page is published." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isUnclaimed> ;
    sh:name "is unclaimed" ;
    sh:description "Indicates whether the Page is unclaimed." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isVerified> ;
    sh:name "is verified" ;
    sh:description "Indicates whether the Page is verified." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/isWebhooksSubscribed> ;
    sh:name "is webhooks subscribed" ;
    sh:description "Indicates whether the Page is subscribed to webhooks." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/keywords> ;
    sh:name "keywords" ;
    sh:description "Represents keywords associated with the Page." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/leadgenTosAcceptanceTime> ;
    sh:name "leadgen tos acceptance time" ;
    sh:description "Represents when the Page's lead-generation terms of service were accepted." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/leadgenTosAccepted> ;
    sh:name "leadgen tos accepted" ;
    sh:description "Indicates whether the Page's lead-generation terms of service were accepted." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/leadgenTosAcceptingUser> ;
    sh:name "leadgen tos accepting user" ;
    sh:description "Represents the user who accepted the Page's lead-generation terms of service." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/link> ;
    sh:name "link" ;
    sh:description "Represents the Page's link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/location> ;
    sh:name "location" ;
    sh:description "Represents the Page's location." ;
    sh:node meta:LocationShape ;
    sh:class meta:Location ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/members> ;
    sh:name "members" ;
    sh:description "Represents members associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/merchantId> ;
    sh:name "merchant id" ;
    sh:description "Represents the merchant identifier associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/merchantReviewStatus> ;
    sh:name "merchant review status" ;
    sh:description "Represents the Page's merchant review status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/messagingFeatureStatus> ;
    sh:name "messaging feature status" ;
    sh:description "Represents the status of messaging features for the Page." ;
    sh:node meta:MessagingFeatureStatusShape ;
    sh:class meta:MessagingFeatureStatus ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/messengerAdsDefaultIcebreakers> ;
    sh:name "messenger ads default icebreakers" ;
    sh:description "Represents the default icebreakers for the Page's Messenger ads." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/messengerAdsDefaultQuickReplies> ;
    sh:name "messenger ads default quick replies" ;
    sh:description "Represents the default quick replies for the Page's Messenger ads." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/messengerAdsQuickRepliesType> ;
    sh:name "messenger ads quick replies type" ;
    sh:description "Represents the quick-reply type used by the Page's Messenger ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/miniShopStorefront> ;
    sh:name "mini shop storefront" ;
    sh:description "Represents the Page's mini-shop storefront." ;
    sh:node meta:ShopShape ;
    sh:class meta:Shop ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/mission> ;
    sh:name "mission" ;
    sh:description "Represents the Page's mission." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/mpg> ;
    sh:name "mpg" ;
    sh:description "Represents the Page's MPG information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/name> ;
    sh:name "name" ;
    sh:description "Represents the Page's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/nameWithLocationDescriptor> ;
    sh:name "name with location descriptor" ;
    sh:description "Represents the Page's name together with its location descriptor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/network> ;
    sh:name "network" ;
    sh:description "Represents the network associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/newLikeCount> ;
    sh:name "new like count" ;
    sh:description "Represents the number of new likes for the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/offerEligible> ;
    sh:name "offer eligible" ;
    sh:description "Indicates whether the Page is eligible for offers." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/overallStarRating> ;
    sh:name "overall star rating" ;
    sh:description "Represents the Page's overall star rating." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/ownerBusiness> ;
    sh:name "owner business" ;
    sh:description "Represents the business that owns the Page." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/pageBackedThreadsAccountId> ;
    sh:name "page backed threads account id" ;
    sh:description "Represents the identifier of the Threads account backed by the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/pageToken> ;
    sh:name "page token" ;
    sh:description "Represents the token associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/parentPage> ;
    sh:name "parent page" ;
    sh:description "Represents the parent Page." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/parking> ;
    sh:name "parking" ;
    sh:description "Represents parking information for the Page." ;
    sh:node meta:PageParkingShape ;
    sh:class meta:PageParking ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/paymentOptions> ;
    sh:name "payment options" ;
    sh:description "Represents payment options associated with the Page." ;
    sh:node meta:PagePaymentOptionsShape ;
    sh:class meta:PagePaymentOptions ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/personalInfo> ;
    sh:name "personal info" ;
    sh:description "Represents personal information associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/personalInterests> ;
    sh:name "personal interests" ;
    sh:description "Represents personal interests associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/pharmaSafetyInfo> ;
    sh:name "pharma safety info" ;
    sh:description "Represents pharmaceutical safety information for the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/phone> ;
    sh:name "phone" ;
    sh:description "Represents the Page's phone number." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/pickupOptions> ;
    sh:name "pickup options" ;
    sh:description "Represents pickup options associated with the Page." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/placeType> ;
    sh:name "place type" ;
    sh:description "Represents the Page's place type." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/plotOutline> ;
    sh:name "plot outline" ;
    sh:description "Represents the Page's plot outline." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/preferredAudience> ;
    sh:name "preferred audience" ;
    sh:description "Represents the Page's preferred audience." ;
    sh:node meta:TargetingShape ;
    sh:class meta:Targeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/pressContact> ;
    sh:name "press contact" ;
    sh:description "Represents the Page's press contact information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/priceRange> ;
    sh:name "price range" ;
    sh:description "Represents the Page's price range." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/priorityHours> ;
    sh:name "priority hours" ;
    sh:description "Represents the Page's priority hours." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/privacyInfoUrl> ;
    sh:name "privacy info url" ;
    sh:description "Represents the URL for the Page's privacy information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/producedBy> ;
    sh:name "produced by" ;
    sh:description "Represents who produced the Page's associated work." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/products> ;
    sh:name "products" ;
    sh:description "Represents the products associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/promotionEligible> ;
    sh:name "promotion eligible" ;
    sh:description "Indicates whether the Page is eligible for promotion." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/promotionIneligibleReason> ;
    sh:name "promotion ineligible reason" ;
    sh:description "Represents the reason the Page is not eligible for promotion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/publicTransit> ;
    sh:name "public transit" ;
    sh:description "Represents public transit information for the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/ratingCount> ;
    sh:name "rating count" ;
    sh:description "Represents the number of ratings associated with the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/recipient> ;
    sh:name "recipient" ;
    sh:description "Represents the recipient associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/recordLabel> ;
    sh:name "record label" ;
    sh:description "Represents the record label associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/releaseDate> ;
    sh:name "release date" ;
    sh:description "Represents the release date associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/restaurantServices> ;
    sh:name "restaurant services" ;
    sh:description "Represents the restaurant services associated with the Page." ;
    sh:node meta:PageRestaurantServicesShape ;
    sh:class meta:PageRestaurantServices ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/restaurantSpecialties> ;
    sh:name "restaurant specialties" ;
    sh:description "Represents the restaurant specialties associated with the Page." ;
    sh:node meta:PageRestaurantSpecialtiesShape ;
    sh:class meta:PageRestaurantSpecialties ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/schedule> ;
    sh:name "schedule" ;
    sh:description "Represents the Page's schedule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/screenplayBy> ;
    sh:name "screenplay by" ;
    sh:description "Represents who wrote the screenplay associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/season> ;
    sh:name "season" ;
    sh:description "Represents the season associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/singleLineAddress> ;
    sh:name "single line address" ;
    sh:description "Represents the Page's address in a single line." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/starring> ;
    sh:name "starring" ;
    sh:description "Represents the starring information associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/startInfo> ;
    sh:name "start info" ;
    sh:description "Represents the Page's start information." ;
    sh:node meta:PageStartInfoShape ;
    sh:class meta:PageStartInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/storeCode> ;
    sh:name "store code" ;
    sh:description "Represents the code associated with the Page's store." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/storeLocationDescriptor> ;
    sh:name "store location descriptor" ;
    sh:description "Represents the location descriptor associated with the Page's store." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/storeNumber> ;
    sh:name "store number" ;
    sh:description "Represents the number associated with the Page's store." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/studio> ;
    sh:name "studio" ;
    sh:description "Represents the studio associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/supportsDonateButtonInLiveVideo> ;
    sh:name "supports donate button in live video" ;
    sh:description "Indicates whether the Page supports a donate button in live video." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/talkingAboutCount> ;
    sh:name "talking about count" ;
    sh:description "Represents the number associated with people talking about the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/temporaryStatus> ;
    sh:name "temporary status" ;
    sh:description "Represents the Page's temporary status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/unreadMessageCount> ;
    sh:name "unread message count" ;
    sh:description "Represents the number of unread messages associated with the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/unreadNotifCount> ;
    sh:name "unread notif count" ;
    sh:description "Represents the number of unread notifications associated with the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/unseenMessageCount> ;
    sh:name "unseen message count" ;
    sh:description "Represents the number of unseen messages associated with the Page." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/userAccessExpireTime> ;
    sh:name "user access expire time" ;
    sh:description "Represents when the user's access to the Page expires." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/username> ;
    sh:name "username" ;
    sh:description "Represents the Page's username." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/verificationStatus> ;
    sh:name "verification status" ;
    sh:description "Represents the Page's verification status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/voipInfo> ;
    sh:name "voip info" ;
    sh:description "Represents the Page's voice-over-IP information." ;
    sh:node meta:VoipInfoShape ;
    sh:class meta:VoipInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/website> ;
    sh:name "website" ;
    sh:description "Represents the website associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/wereHereCount> ;
    sh:name "were here count" ;
    sh:description "Represents the number associated with people who were at the Page's place." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/whatsappNumber> ;
    sh:name "whatsapp number" ;
    sh:description "Represents the Page's WhatsApp number." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Page/writtenBy> ;
    sh:name "written by" ;
    sh:description "Represents who wrote the work associated with the Page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Set
meta:AdSetShape a sh:NodeShape ;
  sh:targetClass meta:AdSet ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/accountId> ;
    sh:name "account id" ;
    sh:description "Identifies the account associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Contains the ad labels associated with the ad set." ;
    sh:node meta:AdLabelShape ;
    sh:class meta:AdLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/adsetSchedule> ;
    sh:name "adset schedule" ;
    sh:description "Contains the day-part schedule associated with the ad set." ;
    sh:node meta:DayPartShape ;
    sh:class meta:DayPart ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/assetFeedId> ;
    sh:name "asset feed id" ;
    sh:description "Identifies the asset feed associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/attributionSpec> ;
    sh:name "attribution spec" ;
    sh:description "Contains the attribution specification for the ad set." ;
    sh:node meta:AttributionSpecShape ;
    sh:class meta:AttributionSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/bidAdjustments> ;
    sh:name "bid adjustments" ;
    sh:description "Contains bid adjustment settings for the ad set." ;
    sh:node meta:AdBidAdjustmentsShape ;
    sh:class meta:AdBidAdjustments ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/bidAmount> ;
    sh:name "bid amount" ;
    sh:description "Represents the bid amount configured for the ad set." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/bidConstraints> ;
    sh:name "bid constraints" ;
    sh:description "Contains bid constraint settings for the ad set." ;
    sh:node meta:AdCampaignBidConstraintShape ;
    sh:class meta:AdCampaignBidConstraint ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/bidInfo> ;
    sh:name "bid info" ;
    sh:description "Contains bid information organized as keyed numeric values for the ad set." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/bidStrategy> ;
    sh:name "bid strategy" ;
    sh:description "Specifies the ad set's bidding strategy, such as cost cap or a lowest-cost strategy." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "COST_CAP" "LOWEST_COST_WITHOUT_CAP" "LOWEST_COST_WITH_BID_CAP" "LOWEST_COST_WITH_MIN_ROAS" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/billingEvent> ;
    sh:name "billing event" ;
    sh:description "Specifies the event used for billing the ad set, such as clicks, impressions, or purchases." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "APP_INSTALLS" "CLICKS" "IMPRESSIONS" "LINK_CLICKS" "LISTING_INTERACTION" "NONE" "OFFER_CLAIMS" "PAGE_LIKES" "POST_ENGAGEMENT" "PURCHASE" "THRUPLAY" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/brandSafetyConfig> ;
    sh:name "brand safety config" ;
    sh:description "Contains the brand-safety campaign configuration for the ad set." ;
    sh:node meta:BrandSafetyCampaignConfigShape ;
    sh:class meta:BrandSafetyCampaignConfig ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/budgetRemaining> ;
    sh:name "budget remaining" ;
    sh:description "Represents the budget remaining for the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/campaign> ;
    sh:name "campaign" ;
    sh:description "Contains the campaign associated with the ad set." ;
    sh:node meta:CampaignShape ;
    sh:class meta:Campaign ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/campaignActiveTime> ;
    sh:name "campaign active time" ;
    sh:description "Represents the active time associated with the ad set's campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/campaignAttribution> ;
    sh:name "campaign attribution" ;
    sh:description "Represents the campaign attribution associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/campaignId> ;
    sh:name "campaign id" ;
    sh:description "Identifies the campaign associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/configuredStatus> ;
    sh:name "configured status" ;
    sh:description "Represents the configured status of the ad set, such as active, paused, archived, or deleted." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "PAUSED" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents when the ad set was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/creativeSequence> ;
    sh:name "creative sequence" ;
    sh:description "Contains the creative sequence configured for the ad set." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/creativeSequenceRepetitionPattern> ;
    sh:name "creative sequence repetition pattern" ;
    sh:description "Represents the repetition pattern for the ad set's creative sequence." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/dailyBudget> ;
    sh:name "daily budget" ;
    sh:description "Represents the ad set's daily budget." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/dailyMinSpendTarget> ;
    sh:name "daily min spend target" ;
    sh:description "Represents the ad set's minimum daily spend target." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/dailySpendCap> ;
    sh:name "daily spend cap" ;
    sh:description "Represents the ad set's daily spending cap." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/destinationType> ;
    sh:name "destination type" ;
    sh:description "Represents the destination type configured for the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/dsaBeneficiary> ;
    sh:name "dsa beneficiary" ;
    sh:description "Identifies the DSA beneficiary associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/dsaPayor> ;
    sh:name "dsa payor" ;
    sh:description "Identifies the DSA payor associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/effectiveStatus> ;
    sh:name "effective status" ;
    sh:description "Represents the ad set's effective status, such as active, paused, deleted, or with issues." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "CAMPAIGN_PAUSED" "DELETED" "IN_PROCESS" "PAUSED" "WITH_ISSUES" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/endTime> ;
    sh:name "end time" ;
    sh:description "Represents when the ad set ends." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/existingCustomerBudgetPercentage> ;
    sh:name "existing customer budget percentage" ;
    sh:description "Represents the budget percentage allocated to existing customers." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/frequencyControlSpecs> ;
    sh:name "frequency control specs" ;
    sh:description "Contains frequency-control specifications for the ad set." ;
    sh:node meta:AdCampaignFrequencyControlSpecsShape ;
    sh:class meta:AdCampaignFrequencyControlSpecs ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/fullFunnelExplorationMode> ;
    sh:name "full funnel exploration mode" ;
    sh:description "Represents the full-funnel exploration mode configured for the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/instagramUserId> ;
    sh:name "instagram user id" ;
    sh:description "Identifies the Instagram user associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/isBaSkipDelayedEligible> ;
    sh:name "is ba skip delayed eligible" ;
    sh:description "Indicates whether the ad set is eligible for BA skip delayed." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/isBudgetScheduleEnabled> ;
    sh:name "is budget schedule enabled" ;
    sh:description "Indicates whether budget scheduling is enabled for the ad set." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/isDynamicCreative> ;
    sh:name "is dynamic creative" ;
    sh:description "Indicates whether the ad set uses dynamic creative." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/isIncrementalAttributionEnabled> ;
    sh:name "is incremental attribution enabled" ;
    sh:description "Indicates whether incremental attribution is enabled for the ad set." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/issuesInfo> ;
    sh:name "issues info" ;
    sh:description "Contains issue information associated with the ad set." ;
    sh:node meta:AdCampaignIssuesInfoShape ;
    sh:class meta:AdCampaignIssuesInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/learningStageInfo> ;
    sh:name "learning stage info" ;
    sh:description "Contains learning-stage information for the ad set." ;
    sh:node meta:AdCampaignLearningStageInfoShape ;
    sh:class meta:AdCampaignLearningStageInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/lifetimeBudget> ;
    sh:name "lifetime budget" ;
    sh:description "Represents the ad set's lifetime budget." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/lifetimeImps> ;
    sh:name "lifetime imps" ;
    sh:description "Represents the ad set's lifetime impressions." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/lifetimeMinSpendTarget> ;
    sh:name "lifetime min spend target" ;
    sh:description "Represents the ad set's minimum lifetime spend target." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/lifetimeSpendCap> ;
    sh:name "lifetime spend cap" ;
    sh:description "Represents the ad set's lifetime spending cap." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/maxBudgetSpendPercentage> ;
    sh:name "max budget spend percentage" ;
    sh:description "Represents the maximum budget-spend percentage configured for the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/minBudgetSpendPercentage> ;
    sh:name "min budget spend percentage" ;
    sh:description "Represents the minimum budget-spend percentage configured for the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/multiOptimizationGoalWeight> ;
    sh:name "multi optimization goal weight" ;
    sh:description "Represents the weight assigned to the ad set's multiple optimization goals." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/name> ;
    sh:name "name" ;
    sh:description "Represents the name of the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/optimizationGoal> ;
    sh:name "optimization goal" ;
    sh:description "Specifies the ad set's optimization goal, such as impressions, reach, link clicks, or app installs." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ADVERTISER_SILOED_VALUE" "AD_RECALL_LIFT" "APP_INSTALLS" "APP_INSTALLS_AND_OFFSITE_CONVERSIONS" "CONVERSATIONS" "DERIVED_EVENTS" "ENGAGED_USERS" "EVENT_RESPONSES" "IMPRESSIONS" "IN_APP_VALUE" "LANDING_PAGE_VIEWS" "LEAD_GENERATION" "LINK_CLICKS" "MEANINGFUL_CALL_ATTEMPT" "MESSAGING_APPOINTMENT_CONVERSION" "MESSAGING_PURCHASE_CONVERSION" "NONE" "OFFSITE_CONVERSIONS" "PAGE_LIKES" "POST_ENGAGEMENT" "PROFILE_AND_PAGE_ENGAGEMENT" "PROFILE_VISIT" "QUALITY_CALL" "QUALITY_LEAD" "REACH" "REMINDERS_SET" "SUBSCRIBERS" "THRUPLAY" "VALUE" "VISIT_INSTAGRAM_PROFILE" "AUTOMATIC_OBJECTIVE" "ENGAGED_PAGE_VIEWS" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/optimizationSubEvent> ;
    sh:name "optimization sub event" ;
    sh:description "Represents the sub-event used for optimizing the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/pacingType> ;
    sh:name "pacing type" ;
    sh:description "Contains the pacing types configured for the ad set." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/promotedObject> ;
    sh:name "promoted object" ;
    sh:description "Contains the object promoted by the ad set." ;
    sh:class meta:AdPromotedObject ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/recommendations> ;
    sh:name "recommendations" ;
    sh:description "Contains recommendations associated with the ad set." ;
    sh:node meta:AdRecommendationShape ;
    sh:class meta:AdRecommendation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/recurringBudgetSemantics> ;
    sh:name "recurring budget semantics" ;
    sh:description "Indicates whether the ad set uses recurring budget semantics." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/regionalRegulatedCategories> ;
    sh:name "regional regulated categories" ;
    sh:description "Contains the regionally regulated categories associated with the ad set." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/regionalRegulationIdentities> ;
    sh:name "regional regulation identities" ;
    sh:description "Contains the identities associated with regional regulation for the ad set." ;
    sh:node meta:RegionalRegulationIdentitiesShape ;
    sh:class meta:RegionalRegulationIdentities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/reviewFeedback> ;
    sh:name "review feedback" ;
    sh:description "Represents review feedback associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/rfPredictionId> ;
    sh:name "rf prediction id" ;
    sh:description "Identifies the RF prediction associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/sourceAdset> ;
    sh:name "source adset" ;
    sh:description "Contains the source ad set associated with the ad set." ;
    sh:class meta:AdSet ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/sourceAdsetId> ;
    sh:name "source adset id" ;
    sh:description "Identifies the source ad set associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/startTime> ;
    sh:lessThan <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/endTime> ;
    sh:name "start time" ;
    sh:description "Represents when the ad set starts, before its end time." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/status> ;
    sh:name "status" ;
    sh:description "Represents the ad set's configured status, such as active, paused, archived, or deleted." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "PAUSED" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/targeting> ;
    sh:name "targeting" ;
    sh:description "Contains the targeting configuration for the ad set." ;
    sh:node meta:TargetingShape ;
    sh:class meta:Targeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/targetingOptimizationTypes> ;
    sh:name "targeting optimization types" ;
    sh:description "Contains targeting optimization type values for the ad set." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/timeBasedAdRotationIdBlocks> ;
    sh:name "time based ad rotation id blocks" ;
    sh:description "Contains nested blocks of identifiers used for time-based ad rotation." ;
    sh:node <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/timeBasedAdRotationIdBlocks/ListLevel1Shape> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/timeBasedAdRotationIntervals> ;
    sh:name "time based ad rotation intervals" ;
    sh:description "Contains the intervals configured for time-based ad rotation." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Represents when the ad set was last updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/useNewAppClick> ;
    sh:name "use new app click" ;
    sh:description "Indicates whether the ad set uses the new app-click behavior." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/anchorEventAttributionWindowDays> ;
    sh:name "anchor event attribution window days" ;
    sh:description "Represents the attribution-window duration in days for the anchor event." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/automaticManualState> ;
    sh:name "automatic manual state" ;
    sh:description "Represents the ad set's automatic or manual state." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/placementSoftOptOut> ;
    sh:name "placement soft opt out" ;
    sh:description "Contains the ad set's placement soft opt-out settings." ;
    sh:node meta:PlacementSoftOptOutShape ;
    sh:class meta:PlacementSoftOptOut ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/trendingTopicsSpec> ;
    sh:name "trending topics spec" ;
    sh:description "Contains the trending-topics specification for the ad set." ;
    sh:node meta:TrendingTopicsSpecShape ;
    sh:class meta:TrendingTopicsSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/valueRuleSetId> ;
    sh:name "value rule set id" ;
    sh:description "Identifies the value rule set associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/valueRulesApplied> ;
    sh:name "value rules applied" ;
    sh:description "Indicates whether value rules have been applied to the ad set." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/creativeDiversityLabel> ;
    sh:name "creative diversity label" ;
    sh:description "Contains creative diversity labels associated with the ad set." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/creativeDiversityScore> ;
    sh:name "creative diversity score" ;
    sh:description "Contains creative diversity scores associated with the ad set." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Day Part
meta:DayPartShape a sh:NodeShape ;
  sh:targetClass meta:DayPart ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DayPart/days> ;
    sh:name "days" ;
    sh:description "Lists the days associated with the day part." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DayPart/endMinute> ;
    sh:name "end minute" ;
    sh:description "Represents the ending minute of the day part." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DayPart/startMinute> ;
    sh:name "start minute" ;
    sh:description "Represents the starting minute of the day part." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DayPart/timezoneType> ;
    sh:name "timezone type" ;
    sh:description "Represents the timezone type used by the day part." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Bid Adjustments
meta:AdBidAdjustmentsShape a sh:NodeShape ;
  sh:targetClass meta:AdBidAdjustments ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdBidAdjustments/ageRange> ;
    sh:name "age range" ;
    sh:description "Contains bid adjustments associated with age ranges." ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdBidAdjustments/pageTypes> ;
    sh:name "page types" ;
    sh:description "Contains page-type bid adjustment information." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdBidAdjustments/userGroups> ;
    sh:name "user groups" ;
    sh:description "Contains user-group bid adjustment information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Campaign Bid Constraint
meta:AdCampaignBidConstraintShape a sh:NodeShape ;
  sh:targetClass meta:AdCampaignBidConstraint ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignBidConstraint/roasAverageFloor> ;
    sh:name "roas average floor" ;
    sh:description "Contains the campaign's average ROAS floor." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Brand Safety Campaign Config
meta:BrandSafetyCampaignConfigShape a sh:NodeShape ;
  sh:targetClass meta:BrandSafetyCampaignConfig ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BrandSafetyCampaignConfig/commentModerationFilter> ;
    sh:name "comment moderation filter" ;
    sh:description "Represents the comment moderation filter for the brand safety campaign configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BrandSafetyCampaignConfig/fbCommentModerationFilter> ;
    sh:name "fb comment moderation filter" ;
    sh:description "Represents the Facebook comment moderation filter for the brand safety campaign configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BrandSafetyCampaignConfig/igCommentModerationFilter> ;
    sh:name "ig comment moderation filter" ;
    sh:description "Represents the Instagram comment moderation filter for the brand safety campaign configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BrandSafetyCampaignConfig/threadsCommentModerationFilter> ;
    sh:name "threads comment moderation filter" ;
    sh:description "Represents the Threads comment moderation filter for the brand safety campaign configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Campaign
meta:CampaignShape a sh:NodeShape ;
  sh:targetClass meta:Campaign ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/accountId> ;
    sh:name "account id" ;
    sh:description "The identifier of the account associated with the campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/adlabels> ;
    sh:name "adlabels" ;
    sh:description "The ad labels associated with the campaign." ;
    sh:node meta:AdLabelShape ;
    sh:class meta:AdLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/advantageStateInfo> ;
    sh:name "advantage state info" ;
    sh:description "Information about the campaign's Advantage state." ;
    sh:node meta:AdCampaignGroupAdvantageStateShape ;
    sh:class meta:AdCampaignGroupAdvantageState ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/bidStrategy> ;
    sh:name "bid strategy" ;
    sh:description "The campaign's bid strategy, such as cost cap or lowest cost." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "COST_CAP" "LOWEST_COST_WITHOUT_CAP" "LOWEST_COST_WITH_BID_CAP" "LOWEST_COST_WITH_MIN_ROAS" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/boostedObjectId> ;
    sh:name "boosted object id" ;
    sh:description "The identifier of the object boosted by the campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/brandLiftStudies> ;
    sh:name "brand lift studies" ;
    sh:description "The brand lift studies associated with the campaign." ;
    sh:node meta:AdStudyShape ;
    sh:class meta:AdStudy ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/budgetRebalanceFlag> ;
    sh:name "budget rebalance flag" ;
    sh:description "Whether the campaign has its budget rebalance flag enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/budgetRemaining> ;
    sh:name "budget remaining" ;
    sh:description "The budget remaining for the campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/buyingType> ;
    sh:name "buying type" ;
    sh:description "The campaign's buying type." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/campaignGroupActiveTime> ;
    sh:name "campaign group active time" ;
    sh:description "The active time associated with the campaign group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/canCreateBrandLiftStudy> ;
    sh:name "can create brand lift study" ;
    sh:description "Whether the campaign can create a brand lift study." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/canUseSpendCap> ;
    sh:name "can use spend cap" ;
    sh:description "Whether the campaign can use a spend cap." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/configuredStatus> ;
    sh:name "configured status" ;
    sh:description "The status configured for the campaign, such as active, paused, archived, or deleted." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "PAUSED" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/createdTime> ;
    sh:name "created time" ;
    sh:description "The time when the campaign was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/dailyBudget> ;
    sh:name "daily budget" ;
    sh:description "The campaign's daily budget." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/effectiveStatus> ;
    sh:name "effective status" ;
    sh:description "The campaign's effective status, such as active, paused, or with issues." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "IN_PROCESS" "PAUSED" "WITH_ISSUES" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/hasSecondarySkadnetworkReporting> ;
    sh:name "has secondary skadnetwork reporting" ;
    sh:description "Whether the campaign has secondary SKAdNetwork reporting." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/id> ;
    sh:name "id" ;
    sh:description "The identifier of the campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/isBudgetScheduleEnabled> ;
    sh:name "is budget schedule enabled" ;
    sh:description "Whether the campaign's budget schedule is enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/isSkadnetworkAttribution> ;
    sh:name "is skadnetwork attribution" ;
    sh:description "Whether the campaign uses SKAdNetwork attribution." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/issuesInfo> ;
    sh:name "issues info" ;
    sh:description "Information about issues associated with the campaign." ;
    sh:node meta:AdCampaignIssuesInfoShape ;
    sh:class meta:AdCampaignIssuesInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/lastBudgetTogglingTime> ;
    sh:name "last budget toggling time" ;
    sh:description "The time when the campaign's budget was last toggled." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/lifetimeBudget> ;
    sh:name "lifetime budget" ;
    sh:description "The campaign's lifetime budget." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/name> ;
    sh:name "name" ;
    sh:description "The name of the campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/objective> ;
    sh:name "objective" ;
    sh:description "The campaign's objective." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/pacingType> ;
    sh:name "pacing type" ;
    sh:description "The pacing types associated with the campaign." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/primaryAttribution> ;
    sh:name "primary attribution" ;
    sh:description "The campaign's primary attribution setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/promotedObject> ;
    sh:name "promoted object" ;
    sh:description "The object promoted by the campaign." ;
    sh:class meta:AdPromotedObject ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/recommendations> ;
    sh:name "recommendations" ;
    sh:description "The recommendations associated with the campaign." ;
    sh:node meta:AdRecommendationShape ;
    sh:class meta:AdRecommendation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/smartPromotionType> ;
    sh:name "smart promotion type" ;
    sh:description "The campaign's smart promotion type." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/sourceCampaign> ;
    sh:name "source campaign" ;
    sh:description "The campaign from which this campaign originated." ;
    sh:class meta:Campaign ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/sourceCampaignId> ;
    sh:name "source campaign id" ;
    sh:description "The identifier of the campaign from which this campaign originated." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/sourceRecommendationType> ;
    sh:name "source recommendation type" ;
    sh:description "The type of recommendation from which this campaign originated." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/specialAdCategories> ;
    sh:name "special ad categories" ;
    sh:description "The special ad categories associated with the campaign." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/specialAdCategory> ;
    sh:name "special ad category" ;
    sh:description "The special ad category associated with the campaign." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/specialAdCategoryCountry> ;
    sh:name "special ad category country" ;
    sh:description "The countries associated with the campaign's special ad category." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/spendCap> ;
    sh:name "spend cap" ;
    sh:description "The campaign's spend cap." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/startTime> ;
    sh:lessThan <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/stopTime> ;
    sh:name "start time" ;
    sh:description "The time when the campaign starts, before its stop time." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/status> ;
    sh:name "status" ;
    sh:description "The campaign's configured status, such as active, paused, archived, or deleted." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "ARCHIVED" "DELETED" "PAUSED" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/stopTime> ;
    sh:name "stop time" ;
    sh:description "The time when the campaign stops." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/toplineId> ;
    sh:name "topline id" ;
    sh:description "The identifier of the campaign's topline." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/updatedTime> ;
    sh:name "updated time" ;
    sh:description "The time when the campaign was last updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/isAdsetBudgetSharingEnabled> ;
    sh:name "is adset budget sharing enabled" ;
    sh:description "Whether budget sharing across ad sets is enabled for the campaign." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/isDirectSendCampaign> ;
    sh:name "is direct send campaign" ;
    sh:description "Whether the campaign is a direct-send campaign." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Campaign/isMessageCampaign> ;
    sh:name "is message campaign" ;
    sh:description "Whether the campaign is a message campaign." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Campaign Group Advantage State
meta:AdCampaignGroupAdvantageStateShape a sh:NodeShape ;
  sh:targetClass meta:AdCampaignGroupAdvantageState ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignGroupAdvantageState/advantageAudienceState> ;
    sh:name "advantage audience state" ;
    sh:description "Describes the advantage audience state for the campaign group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignGroupAdvantageState/advantageBudgetState> ;
    sh:name "advantage budget state" ;
    sh:description "Describes the advantage budget state for the campaign group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignGroupAdvantageState/advantagePlacementState> ;
    sh:name "advantage placement state" ;
    sh:description "Describes the advantage placement state for the campaign group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignGroupAdvantageState/advantageState> ;
    sh:name "advantage state" ;
    sh:description "Describes the overall advantage state for the campaign group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Study
meta:AdStudyShape a sh:NodeShape ;
  sh:targetClass meta:AdStudy ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/business> ;
    sh:name "business" ;
    sh:description "Identifies the business associated with the ad study." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/canceledTime> ;
    sh:name "canceled time" ;
    sh:description "Indicates when the ad study was canceled." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/clientBusiness> ;
    sh:name "client business" ;
    sh:description "Identifies the client business associated with the ad study." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/cooldownStartTime> ;
    sh:name "cooldown start time" ;
    sh:description "Indicates when the ad study cooldown started." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/createdBy> ;
    sh:name "created by" ;
    sh:description "Identifies the user who created the ad study." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/createdTime> ;
    sh:name "created time" ;
    sh:description "Indicates when the ad study was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/description> ;
    sh:name "description" ;
    sh:description "Contains the description of the ad study." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/endTime> ;
    sh:name "end time" ;
    sh:description "Indicates when the ad study ends." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad study." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/measurementContact> ;
    sh:name "measurement contact" ;
    sh:description "Identifies the user serving as the measurement contact for the ad study." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/name> ;
    sh:name "name" ;
    sh:description "Contains the name of the ad study." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/observationEndTime> ;
    sh:name "observation end time" ;
    sh:description "Indicates when the ad study observation period ends." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/resultsFirstAvailableDate> ;
    sh:name "results first available date" ;
    sh:description "Indicates the date when ad study results are first available." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/salesContact> ;
    sh:name "sales contact" ;
    sh:description "Identifies the user serving as the sales contact for the ad study." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/startTime> ;
    sh:name "start time" ;
    sh:description "Indicates when the ad study starts." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/type> ;
    sh:name "type" ;
    sh:description "Represents the type of the ad study." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/updatedBy> ;
    sh:name "updated by" ;
    sh:description "Identifies the user who last updated the ad study." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdStudy/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Indicates when the ad study was updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] .

# Shape for User
meta:UserShape a sh:NodeShape ;
  sh:targetClass meta:User ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/about> ;
    sh:name "about" ;
    sh:description "Represents information about the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/ageRange> ;
    sh:name "age range" ;
    sh:description "Represents the user's age range." ;
    sh:node meta:AgeRangeShape ;
    sh:class meta:AgeRange ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/birthday> ;
    sh:name "birthday" ;
    sh:description "Represents the user's birthday." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/clientBusinessId> ;
    sh:name "client business id" ;
    sh:description "Represents the client business identifier associated with the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/community> ;
    sh:name "community" ;
    sh:description "Represents the group associated with the user as their community." ;
    sh:node meta:GroupShape ;
    sh:class meta:Group ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/cover> ;
    sh:name "cover" ;
    sh:description "Represents the user's cover photo." ;
    sh:node meta:UserCoverPhotoShape ;
    sh:class meta:UserCoverPhoto ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/currency> ;
    sh:name "currency" ;
    sh:description "Represents the currency associated with the user." ;
    sh:node meta:CurrencyShape ;
    sh:class meta:Currency ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/education> ;
    sh:name "education" ;
    sh:description "Represents the user's education experiences." ;
    sh:node meta:EducationExperienceShape ;
    sh:class meta:EducationExperience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/email> ;
    sh:name "email" ;
    sh:description "Represents the user's email address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/favoriteAthletes> ;
    sh:name "favorite athletes" ;
    sh:description "Represents the athletes marked as favorites by the user." ;
    sh:node meta:ExperienceShape ;
    sh:class meta:Experience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/favoriteTeams> ;
    sh:name "favorite teams" ;
    sh:description "Represents the teams marked as favorites by the user." ;
    sh:node meta:ExperienceShape ;
    sh:class meta:Experience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/firstName> ;
    sh:name "first name" ;
    sh:description "Represents the user's first name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/gender> ;
    sh:name "gender" ;
    sh:description "Represents the user's gender." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/hometown> ;
    sh:name "hometown" ;
    sh:description "Represents the page associated with the user's hometown." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/id> ;
    sh:name "id" ;
    sh:description "Represents the user's identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/inspirationalPeople> ;
    sh:name "inspirational people" ;
    sh:description "Represents the people identified as inspirational by the user." ;
    sh:node meta:ExperienceShape ;
    sh:class meta:Experience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/installType> ;
    sh:name "install type" ;
    sh:description "Represents the user's installation type." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/installed> ;
    sh:name "installed" ;
    sh:description "Indicates whether the user is installed." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/isGuestUser> ;
    sh:name "is guest user" ;
    sh:description "Indicates whether the user is a guest user." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/isWorkAccount> ;
    sh:name "is work account" ;
    sh:description "Indicates whether the user is a work account." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/languages> ;
    sh:name "languages" ;
    sh:description "Represents the languages associated with the user." ;
    sh:node meta:ExperienceShape ;
    sh:class meta:Experience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/lastName> ;
    sh:name "last name" ;
    sh:description "Represents the user's last name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/link> ;
    sh:name "link" ;
    sh:description "Represents the link associated with the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/localNewsMegaphoneDismissStatus> ;
    sh:name "local news megaphone dismiss status" ;
    sh:description "Indicates the user's local-news megaphone dismissal status." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/localNewsSubscriptionStatus> ;
    sh:name "local news subscription status" ;
    sh:description "Indicates the user's local-news subscription status." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/locale> ;
    sh:name "locale" ;
    sh:description "Represents the user's locale." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/location> ;
    sh:name "location" ;
    sh:description "Represents the page associated with the user's location." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/meetingFor> ;
    sh:name "meeting for" ;
    sh:description "Represents what the user is seeking to meet for." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/middleName> ;
    sh:name "middle name" ;
    sh:description "Represents the user's middle name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/name> ;
    sh:name "name" ;
    sh:description "Represents the user's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/nameFormat> ;
    sh:name "name format" ;
    sh:description "Represents the format of the user's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/paymentPricepoints> ;
    sh:name "payment pricepoints" ;
    sh:description "Represents the payment price points associated with the user." ;
    sh:node meta:PaymentPricepointsShape ;
    sh:class meta:PaymentPricepoints ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/political> ;
    sh:name "political" ;
    sh:description "Represents the user's political information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/profilePic> ;
    sh:name "profile pic" ;
    sh:description "Represents the user's profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/quotes> ;
    sh:name "quotes" ;
    sh:description "Represents the user's quotes." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/relationshipStatus> ;
    sh:name "relationship status" ;
    sh:description "Represents the user's relationship status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/religion> ;
    sh:name "religion" ;
    sh:description "Represents the user's religion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/sharedLoginUpgradeRequiredBy> ;
    sh:name "shared login upgrade required by" ;
    sh:description "Represents the time by which a shared-login upgrade is required for the user." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/shortName> ;
    sh:name "short name" ;
    sh:description "Represents the user's short name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/significantOther> ;
    sh:name "significant other" ;
    sh:description "Represents the user identified as the user's significant other." ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/sports> ;
    sh:name "sports" ;
    sh:description "Represents the sports associated with the user." ;
    sh:node meta:ExperienceShape ;
    sh:class meta:Experience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/supportsDonateButtonInLiveVideo> ;
    sh:name "supports donate button in live video" ;
    sh:description "Indicates whether the user supports a donate button in live video." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/thirdPartyId> ;
    sh:name "third party id" ;
    sh:description "Represents the user's third-party identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/timezone> ;
    sh:name "timezone" ;
    sh:description "Represents the user's timezone." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/tokenForBusiness> ;
    sh:name "token for business" ;
    sh:description "Represents the user's token for business." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Represents the time when the user was updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/verified> ;
    sh:name "verified" ;
    sh:description "Indicates whether the user is verified." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/videoUploadLimits> ;
    sh:name "video upload limits" ;
    sh:description "Represents the user's video upload limits." ;
    sh:node meta:VideoUploadLimitsShape ;
    sh:class meta:VideoUploadLimits ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.User/website> ;
    sh:name "website" ;
    sh:description "Represents the user's website." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Age Range
meta:AgeRangeShape a sh:NodeShape ;
  sh:targetClass meta:AgeRange ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgeRange/max> ;
    sh:name "max" ;
    sh:description "Represents the maximum value of the age range." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AgeRange/min> ;
    sh:name "min" ;
    sh:description "Represents the minimum value of the age range." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Group
meta:GroupShape a sh:NodeShape ;
  sh:targetClass meta:Group ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/archived> ;
    sh:name "archived" ;
    sh:description "Indicates whether the group is archived." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/cover> ;
    sh:name "cover" ;
    sh:description "Represents the group's cover photo." ;
    sh:node meta:CoverPhotoShape ;
    sh:class meta:CoverPhoto ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents when the group was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/description> ;
    sh:name "description" ;
    sh:description "Represents the group's description." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/email> ;
    sh:name "email" ;
    sh:description "Represents the group's email address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/icon> ;
    sh:name "icon" ;
    sh:description "Represents the group's icon." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/id> ;
    sh:name "id" ;
    sh:description "Represents the group's identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/install> ;
    sh:name "install" ;
    sh:description "Represents an unspecified object associated with the group's installation." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/link> ;
    sh:name "link" ;
    sh:description "Represents the group's link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/memberCount> ;
    sh:name "member count" ;
    sh:description "Represents the number of members in the group." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/memberRequestCount> ;
    sh:name "member request count" ;
    sh:description "Represents the number of member requests for the group." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/name> ;
    sh:name "name" ;
    sh:description "Represents the group's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/parent> ;
    sh:name "parent" ;
    sh:description "Represents an unspecified parent object associated with the group." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/permissions> ;
    sh:name "permissions" ;
    sh:description "Represents the permissions associated with the group." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/privacy> ;
    sh:name "privacy" ;
    sh:description "Represents the group's privacy setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/purpose> ;
    sh:name "purpose" ;
    sh:description "Represents the group's purpose." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/subdomain> ;
    sh:name "subdomain" ;
    sh:description "Represents the group's subdomain." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Represents when the group was updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Group/venue> ;
    sh:name "venue" ;
    sh:description "Represents the group's venue location." ;
    sh:node meta:LocationShape ;
    sh:class meta:Location ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Cover Photo
meta:CoverPhotoShape a sh:NodeShape ;
  sh:targetClass meta:CoverPhoto ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CoverPhoto/coverId> ;
    sh:name "cover id" ;
    sh:description "Identifies the cover associated with the cover photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CoverPhoto/id> ;
    sh:name "id" ;
    sh:description "Identifies the cover photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CoverPhoto/offsetX> ;
    sh:name "offset x" ;
    sh:description "Represents the horizontal offset of the cover photo." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CoverPhoto/offsetY> ;
    sh:name "offset y" ;
    sh:description "Represents the vertical offset of the cover photo." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CoverPhoto/source> ;
    sh:name "source" ;
    sh:description "Provides the source associated with the cover photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Location
meta:LocationShape a sh:NodeShape ;
  sh:targetClass meta:Location ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/city> ;
    sh:name "city" ;
    sh:description "Represents the city associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/cityId> ;
    sh:name "city id" ;
    sh:description "Identifies the city associated with the location." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/country> ;
    sh:name "country" ;
    sh:description "Represents the country associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/countryCode> ;
    sh:name "country code" ;
    sh:description "Represents the country code associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/latitude> ;
    sh:name "latitude" ;
    sh:description "Represents the latitude of the location." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/locatedIn> ;
    sh:name "located in" ;
    sh:description "Represents where the location is situated." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/longitude> ;
    sh:name "longitude" ;
    sh:description "Represents the longitude of the location." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/name> ;
    sh:name "name" ;
    sh:description "Represents the name of the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/region> ;
    sh:name "region" ;
    sh:description "Represents the region associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/regionId> ;
    sh:name "region id" ;
    sh:description "Identifies the region associated with the location." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/state> ;
    sh:name "state" ;
    sh:description "Represents the state associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/street> ;
    sh:name "street" ;
    sh:description "Represents the street associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Location/zip> ;
    sh:name "zip" ;
    sh:description "Represents the ZIP code associated with the location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for User Cover Photo
meta:UserCoverPhotoShape a sh:NodeShape ;
  sh:targetClass meta:UserCoverPhoto ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.UserCoverPhoto/offsetX> ;
    sh:name "offset x" ;
    sh:description "Represents the horizontal offset of the cover photo." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.UserCoverPhoto/offsetY> ;
    sh:name "offset y" ;
    sh:description "Represents the vertical offset of the cover photo." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.UserCoverPhoto/source> ;
    sh:name "source" ;
    sh:description "Represents the source of the cover photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Currency
meta:CurrencyShape a sh:NodeShape ;
  sh:targetClass meta:Currency ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Currency/currencyOffset> ;
    sh:name "currency offset" ;
    sh:description "Represents the offset associated with the currency." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Currency/usdExchange> ;
    sh:name "usd exchange" ;
    sh:description "Represents the currency’s exchange value relative to USD." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Currency/usdExchangeInverse> ;
    sh:name "usd exchange inverse" ;
    sh:description "Represents the inverse exchange value relative to USD for the currency." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Currency/userCurrency> ;
    sh:name "user currency" ;
    sh:description "Identifies the currency associated with the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Education Experience
meta:EducationExperienceShape a sh:NodeShape ;
  sh:targetClass meta:EducationExperience ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/classes> ;
    sh:name "classes" ;
    sh:description "Lists the class experiences associated with the education experience." ;
    sh:node meta:ExperienceShape ;
    sh:class meta:Experience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/concentration> ;
    sh:name "concentration" ;
    sh:description "Identifies the concentration associated with the education experience." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/degree> ;
    sh:name "degree" ;
    sh:description "Identifies the degree associated with the education experience." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/id> ;
    sh:name "id" ;
    sh:description "Identifies the education experience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/school> ;
    sh:name "school" ;
    sh:description "Identifies the school associated with the education experience." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/type> ;
    sh:name "type" ;
    sh:description "Represents the type of the education experience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/with> ;
    sh:name "with" ;
    sh:description "Lists the users associated with the education experience." ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EducationExperience/year> ;
    sh:name "year" ;
    sh:description "Represents the year associated with the education experience." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Experience
meta:ExperienceShape a sh:NodeShape ;
  sh:targetClass meta:Experience ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Experience/description> ;
    sh:name "description" ;
    sh:description "Represents the experience's description." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Experience/from> ;
    sh:name "from" ;
    sh:description "Identifies the object associated with the experience's origin." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Experience/id> ;
    sh:name "id" ;
    sh:description "Identifies the experience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Experience/name> ;
    sh:name "name" ;
    sh:description "Represents the experience's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Experience/with> ;
    sh:name "with" ;
    sh:description "Identifies the users associated with the experience." ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] .

# Shape for Payment Pricepoints
meta:PaymentPricepointsShape a sh:NodeShape ;
  sh:targetClass meta:PaymentPricepoints ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PaymentPricepoints/mobile> ;
    sh:name "mobile" ;
    sh:description "Represents the mobile payment price points." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Upload Limits
meta:VideoUploadLimitsShape a sh:NodeShape ;
  sh:targetClass meta:VideoUploadLimits ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoUploadLimits/length> ;
    sh:name "length" ;
    sh:description "Specifies a length limit for video uploads." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoUploadLimits/size> ;
    sh:name "size" ;
    sh:description "Specifies a size limit for video uploads." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Campaign Issues Info
meta:AdCampaignIssuesInfoShape a sh:NodeShape ;
  sh:targetClass meta:AdCampaignIssuesInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignIssuesInfo/errorCode> ;
    sh:name "error code" ;
    sh:description "Identifies the campaign issue with an error code." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignIssuesInfo/errorMessage> ;
    sh:name "error message" ;
    sh:description "Contains the message describing the campaign issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignIssuesInfo/errorSummary> ;
    sh:name "error summary" ;
    sh:description "Contains a summary of the campaign issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignIssuesInfo/errorType> ;
    sh:name "error type" ;
    sh:description "Identifies the type of campaign issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignIssuesInfo/level> ;
    sh:name "level" ;
    sh:description "Indicates the level of the campaign issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignIssuesInfo/mid> ;
    sh:name "mid" ;
    sh:description "Contains the identifier associated with the campaign issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Promoted Object
meta:AdPromotedObjectShape a sh:NodeShape ;
  sh:targetClass meta:AdPromotedObject ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/applicationId> ;
    sh:name "application id" ;
    sh:description "Identifies the application associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/boostedProductSetId> ;
    sh:name "boosted product set id" ;
    sh:description "Identifies the product set associated with the boosted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/conversionGoalId> ;
    sh:name "conversion goal id" ;
    sh:description "Identifies the conversion goal associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/customAttributionSourceIds> ;
    sh:name "custom attribution source ids" ;
    sh:description "Identifies the custom attribution sources associated with the promoted object." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/customConversionId> ;
    sh:name "custom conversion id" ;
    sh:description "Identifies the custom conversion associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/customEventStr> ;
    sh:name "custom event str" ;
    sh:description "Provides the custom event associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/customEventType> ;
    sh:name "custom event type" ;
    sh:description "Identifies the custom event type associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACHIEVEMENT_UNLOCKED" "ADD_PAYMENT_INFO" "ADD_TO_CART" "ADD_TO_WISHLIST" "AD_IMPRESSION" "COMPLETE_REGISTRATION" "CONTACT" "CONTENT_VIEW" "CUSTOMIZE_PRODUCT" "D2_RETENTION" "D7_RETENTION" "DONATE" "FIND_LOCATION" "INITIATED_CHECKOUT" "LEAD" "LEVEL_ACHIEVED" "LISTING_INTERACTION" "MESSAGING_CONVERSATION_STARTED_7D" "OTHER" "PURCHASE" "RATE" "SCHEDULE" "SEARCH" "SERVICE_BOOKING_REQUEST" "SPENT_CREDITS" "START_TRIAL" "SUBMIT_APPLICATION" "SUBSCRIBE" "TUTORIAL_COMPLETION" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/datasetSplitId> ;
    sh:name "dataset split id" ;
    sh:description "An identifier for a dataset split associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/datasetSplitIds> ;
    sh:name "dataset split ids" ;
    sh:description "A collection of identifiers for dataset splits associated with the promoted object." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/eventId> ;
    sh:name "event id" ;
    sh:description "An identifier for an event associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/fullFunnelObjective> ;
    sh:name "full funnel objective" ;
    sh:description "The full-funnel advertising objective associated with the promoted object, such as awareness, engagement, leads, sales, or traffic." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "APP_INSTALLS" "BRAND_AWARENESS" "EVENT_RESPONSES" "LEAD_GENERATION" "LINK_CLICKS" "LOCAL_AWARENESS" "MESSAGES" "OFFER_CLAIMS" "OUTCOME_APP_PROMOTION" "OUTCOME_AWARENESS" "OUTCOME_ENGAGEMENT" "OUTCOME_LEADS" "OUTCOME_SALES" "OUTCOME_TRAFFIC" "PAGE_LIKES" "POST_ENGAGEMENT" "PRODUCT_CATALOG_SALES" "REACH" "STORE_VISITS" "VIDEO_VIEWS" "WEBSITE_CONVERSIONS" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/fundraiserCampaignId> ;
    sh:name "fundraiser campaign id" ;
    sh:description "An identifier for a fundraiser campaign associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/instagramActorId> ;
    sh:name "instagram actor id" ;
    sh:description "An identifier for an Instagram actor associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/jobListingId> ;
    sh:name "job listing id" ;
    sh:description "An identifier for a job listing associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsCustomEventStr> ;
    sh:name "lead ads custom event str" ;
    sh:description "A custom event value associated with lead ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsCustomEventType> ;
    sh:name "lead ads custom event type" ;
    sh:description "The event type associated with a lead ads custom event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACHIEVEMENT_UNLOCKED" "ADD_PAYMENT_INFO" "ADD_TO_CART" "ADD_TO_WISHLIST" "AD_IMPRESSION" "COMPLETE_REGISTRATION" "CONTACT" "CONTENT_VIEW" "CUSTOMIZE_PRODUCT" "D2_RETENTION" "D7_RETENTION" "DONATE" "FIND_LOCATION" "INITIATED_CHECKOUT" "LEAD" "LEVEL_ACHIEVED" "LISTING_INTERACTION" "MESSAGING_CONVERSATION_STARTED_7D" "OTHER" "PURCHASE" "RATE" "SCHEDULE" "SEARCH" "SERVICE_BOOKING_REQUEST" "SPENT_CREDITS" "START_TRIAL" "SUBMIT_APPLICATION" "SUBSCRIBE" "TUTORIAL_COMPLETION" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsFollowUpEvent> ;
    sh:name "lead ads follow up event" ;
    sh:description "A follow-up event associated with lead ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsFormEventSourceType> ;
    sh:name "lead ads form event source type" ;
    sh:description "The event source type associated with a lead ads form." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsOffsiteConversionType> ;
    sh:name "lead ads offsite conversion type" ;
    sh:description "The offsite conversion type associated with lead ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsQualityVolumeSetting> ;
    sh:name "lead ads quality volume setting" ;
    sh:description "A quality or volume setting associated with lead ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/leadAdsSelectedPixelId> ;
    sh:name "lead ads selected pixel id" ;
    sh:description "An identifier for the pixel selected for lead ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/liveVideoDestination> ;
    sh:name "live video destination" ;
    sh:description "The destination associated with live video promotion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/mcmeConversionId> ;
    sh:name "mcme conversion id" ;
    sh:description "An identifier for an MCME conversion associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/multiEventProduct> ;
    sh:name "multi event product" ;
    sh:description "A product value associated with multiple events." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/objectStoreUrl> ;
    sh:name "object store url" ;
    sh:description "A URL associated with the promoted object’s object store." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/objectStoreUrls> ;
    sh:name "object store urls" ;
    sh:description "A collection of URLs associated with the promoted object’s object store." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/offerId> ;
    sh:name "offer id" ;
    sh:description "An identifier for an offer associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/offlineConversionDataSetId> ;
    sh:name "offline conversion data set id" ;
    sh:description "An identifier for the offline conversion data set associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/offsiteConversionEventId> ;
    sh:name "offsite conversion event id" ;
    sh:description "An identifier for an offsite conversion event associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/omnichannelObject> ;
    sh:name "omnichannel object" ;
    sh:description "An omnichannel object associated with the promoted object." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/pageId> ;
    sh:name "page id" ;
    sh:description "An identifier for a page associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/passbackApplicationId> ;
    sh:name "passback application id" ;
    sh:description "An identifier for an application associated with passback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/passbackPixelId> ;
    sh:name "passback pixel id" ;
    sh:description "An identifier for a pixel associated with passback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/pixelAggregationRule> ;
    sh:name "pixel aggregation rule" ;
    sh:description "An aggregation rule associated with a pixel." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/pixelId> ;
    sh:name "pixel id" ;
    sh:description "An identifier for a pixel associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/pixelRule> ;
    sh:name "pixel rule" ;
    sh:description "A rule associated with a pixel." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/placePageSet> ;
    sh:name "place page set" ;
    sh:description "A place page set associated with the promoted object." ;
    sh:node meta:AdPlacePageSetShape ;
    sh:class meta:AdPlacePageSet ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/placePageSetId> ;
    sh:name "place page set id" ;
    sh:description "An identifier for a place page set associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/productCatalogId> ;
    sh:name "product catalog id" ;
    sh:description "An identifier for a product catalog associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/productItemId> ;
    sh:name "product item id" ;
    sh:description "An identifier for a product item associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/productSet> ;
    sh:name "product set" ;
    sh:description "A product set associated with the promoted object." ;
    sh:node meta:ProductSetShape ;
    sh:class meta:ProductSet ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/productSetId> ;
    sh:name "product set id" ;
    sh:description "An identifier for a product set associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/productSetOptimization> ;
    sh:name "product set optimization" ;
    sh:description "An optimization setting associated with a product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/retentionDays> ;
    sh:name "retention days" ;
    sh:description "A retention period value associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/smartPseEnabled> ;
    sh:name "smart pse enabled" ;
    sh:description "Whether Smart PSE is enabled for the promoted object." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/smartPseSetting> ;
    sh:name "smart pse setting" ;
    sh:description "A Smart PSE setting associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/valueSemanticType> ;
    sh:name "value semantic type" ;
    sh:description "The semantic type associated with the promoted object’s value." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/variation> ;
    sh:name "variation" ;
    sh:description "A variation associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/whatsAppBusinessPhoneNumberId> ;
    sh:name "whats app business phone number id" ;
    sh:description "An identifier for a WhatsApp Business phone number associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPromotedObject/whatsappPhoneNumber> ;
    sh:name "whatsapp phone number" ;
    sh:description "A WhatsApp phone number associated with the promoted object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Place Page Set
meta:AdPlacePageSetShape a sh:NodeShape ;
  sh:targetClass meta:AdPlacePageSet ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPlacePageSet/accountId> ;
    sh:name "account id" ;
    sh:description "Identifies the ad account associated with the page set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPlacePageSet/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad place page set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPlacePageSet/locationTypes> ;
    sh:name "location types" ;
    sh:description "Lists the location types associated with the page set." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPlacePageSet/name> ;
    sh:name "name" ;
    sh:description "Provides the name of the ad place page set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPlacePageSet/pagesCount> ;
    sh:name "pages count" ;
    sh:description "Indicates the number of pages in the page set." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdPlacePageSet/parentPage> ;
    sh:name "parent page" ;
    sh:description "Identifies the parent page associated with the page set." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Product Set
meta:ProductSetShape a sh:NodeShape ;
  sh:targetClass meta:ProductSet ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/autoCreationUrl> ;
    sh:name "auto creation url" ;
    sh:description "The URL associated with automatic creation of the product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/filter> ;
    sh:name "filter" ;
    sh:description "The filter associated with the product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/id> ;
    sh:name "id" ;
    sh:description "The identifier of the product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/latestMetadata> ;
    sh:name "latest metadata" ;
    sh:description "The latest metadata associated with the product set." ;
    sh:node meta:ProductSetMetadataShape ;
    sh:class meta:ProductSetMetadata ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/liveMetadata> ;
    sh:name "live metadata" ;
    sh:description "The live metadata associated with the product set." ;
    sh:node meta:ProductSetMetadataShape ;
    sh:class meta:ProductSetMetadata ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/name> ;
    sh:name "name" ;
    sh:description "The name of the product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/orderingInfo> ;
    sh:name "ordering info" ;
    sh:description "Ordering information associated with the product set." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/productCatalog> ;
    sh:name "product catalog" ;
    sh:description "The product catalog containing or associated with the product set." ;
    sh:node meta:ProductCatalogShape ;
    sh:class meta:ProductCatalog ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/productCount> ;
    sh:name "product count" ;
    sh:description "The number of products in the product set." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSet/retailerId> ;
    sh:name "retailer id" ;
    sh:description "The retailer identifier associated with the product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Product Set Metadata
meta:ProductSetMetadataShape a sh:NodeShape ;
  sh:targetClass meta:ProductSetMetadata ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSetMetadata/coverImageUrl> ;
    sh:name "cover image url" ;
    sh:description "The URL of the cover image for the product set metadata." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSetMetadata/description> ;
    sh:name "description" ;
    sh:description "The description of the product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSetMetadata/externalUrl> ;
    sh:name "external url" ;
    sh:description "The external URL associated with the product set metadata." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductSetMetadata/integrityReviewStatus> ;
    sh:name "integrity review status" ;
    sh:description "The integrity review status of the product set metadata." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Recommendation
meta:AdRecommendationShape a sh:NodeShape ;
  sh:targetClass meta:AdRecommendation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/blameField> ;
    sh:name "blame field" ;
    sh:description "The field associated with the issue identified by the recommendation." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/code> ;
    sh:name "code" ;
    sh:description "The code associated with the recommendation." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/confidence> ;
    sh:name "confidence" ;
    sh:description "The confidence level assigned to the recommendation, which may be high, medium, or low." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "HIGH" "LOW" "MEDIUM" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/importance> ;
    sh:name "importance" ;
    sh:description "The importance level assigned to the recommendation, which may be high, medium, or low." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "HIGH" "LOW" "MEDIUM" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/message> ;
    sh:name "message" ;
    sh:description "The message provided with the recommendation." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/recommendationData> ;
    sh:name "recommendation data" ;
    sh:description "Additional data associated with the recommendation." ;
    sh:node meta:AdRecommendationDataShape ;
    sh:class meta:AdRecommendationData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/title> ;
    sh:name "title" ;
    sh:description "The title of the recommendation." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendation/value> ;
    sh:name "value" ;
    sh:description "A value associated with the recommendation." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Recommendation Data
meta:AdRecommendationDataShape a sh:NodeShape ;
  sh:targetClass meta:AdRecommendationData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdRecommendationData/link> ;
    sh:name "link" ;
    sh:description "A link associated with the recommendation data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Campaign Frequency Control Specs
meta:AdCampaignFrequencyControlSpecsShape a sh:NodeShape ;
  sh:targetClass meta:AdCampaignFrequencyControlSpecs ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignFrequencyControlSpecs/event> ;
    sh:name "event" ;
    sh:description "Identifies the event used by the frequency control specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignFrequencyControlSpecs/intervalDays> ;
    sh:name "interval days" ;
    sh:description "Contains the interval in days used by the frequency control specification." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignFrequencyControlSpecs/maxFrequency> ;
    sh:name "max frequency" ;
    sh:description "Contains the maximum frequency used by the frequency control specification." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignFrequencyControlSpecs/type> ;
    sh:name "type" ;
    sh:description "Identifies the type of frequency control specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Campaign Learning Stage Info
meta:AdCampaignLearningStageInfoShape a sh:NodeShape ;
  sh:targetClass meta:AdCampaignLearningStageInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/attributionWindows> ;
    sh:name "attribution windows" ;
    sh:description "Lists the attribution windows associated with the campaign's learning-stage information." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/casSegment> ;
    sh:name "cas segment" ;
    sh:description "Identifies the CAS segment associated with the campaign's learning-stage information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/conversions> ;
    sh:name "conversions" ;
    sh:description "Contains the conversions associated with the campaign's learning-stage information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/currentBudgetPrediction> ;
    sh:name "current budget prediction" ;
    sh:description "Contains the current budget prediction for the campaign." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/dynamicLpConversionsThreshold> ;
    sh:name "dynamic lp conversions threshold" ;
    sh:description "Contains the conversions threshold for dynamic learning-phase information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/dynamicLpDaysThreshold> ;
    sh:name "dynamic lp days threshold" ;
    sh:description "Contains the days threshold for dynamic learning-phase information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/dynamicLpStatus> ;
    sh:name "dynamic lp status" ;
    sh:description "Describes the status of the dynamic learning-phase information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/isOneToOneCboBudget> ;
    sh:name "is one to one cbo budget" ;
    sh:description "Indicates whether the campaign uses a one-to-one CBO budget." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/lastSigEditTs> ;
    sh:name "last sig edit ts" ;
    sh:description "Contains the timestamp of the last significant edit." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/recommendedBudgetPrediction> ;
    sh:name "recommended budget prediction" ;
    sh:description "Contains the recommended budget prediction for the campaign." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/sigeditRemoval> ;
    sh:name "sigedit removal" ;
    sh:description "Indicates whether significant-edit removal applies." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCampaignLearningStageInfo/status> ;
    sh:name "status" ;
    sh:description "Describes the campaign's learning-stage status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Regional Regulation Identities
meta:RegionalRegulationIdentitiesShape a sh:NodeShape ;
  sh:targetClass meta:RegionalRegulationIdentities ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/australiaFinservBeneficiary> ;
    sh:name "australia finserv beneficiary" ;
    sh:description "The beneficiary identity for financial services in Australia." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/australiaFinservPayer> ;
    sh:name "australia finserv payer" ;
    sh:description "The payer identity for financial services in Australia." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/indiaFinservBeneficiary> ;
    sh:name "india finserv beneficiary" ;
    sh:description "The beneficiary identity for financial services in India." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/indiaFinservPayer> ;
    sh:name "india finserv payer" ;
    sh:description "The payer identity for financial services in India." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/singaporeUniversalBeneficiary> ;
    sh:name "singapore universal beneficiary" ;
    sh:description "The universal beneficiary identity for Singapore." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/singaporeUniversalPayer> ;
    sh:name "singapore universal payer" ;
    sh:description "The universal payer identity for Singapore." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/taiwanFinservBeneficiary> ;
    sh:name "taiwan finserv beneficiary" ;
    sh:description "The beneficiary identity for financial services in Taiwan." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/taiwanFinservPayer> ;
    sh:name "taiwan finserv payer" ;
    sh:description "The payer identity for financial services in Taiwan." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/taiwanUniversalBeneficiary> ;
    sh:name "taiwan universal beneficiary" ;
    sh:description "The universal beneficiary identity for Taiwan." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/taiwanUniversalPayer> ;
    sh:name "taiwan universal payer" ;
    sh:description "The universal payer identity for Taiwan." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/universalBeneficiary> ;
    sh:name "universal beneficiary" ;
    sh:description "The universal beneficiary identity." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RegionalRegulationIdentities/universalPayer> ;
    sh:name "universal payer" ;
    sh:description "The universal payer identity." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting
meta:TargetingShape a sh:NodeShape ;
  sh:targetClass meta:Targeting ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/adgroupId> ;
    sh:name "adgroup id" ;
    sh:description "Identifies the ad group associated with the targeting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/ageMax> ;
    sh:name "age max" ;
    sh:description "Represents the maximum age in the targeting age range." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/ageMin> ;
    sh:name "age min" ;
    sh:description "Represents the minimum age in the targeting age range." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/ageRange> ;
    sh:name "age range" ;
    sh:description "Represents age-range values included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/alternateAutoTargetingOption> ;
    sh:name "alternate auto targeting option" ;
    sh:description "Represents an alternate automatic-targeting option." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/appInstallState> ;
    sh:name "app install state" ;
    sh:description "Represents the application installation state used in the targeting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/audienceNetworkPositions> ;
    sh:name "audience network positions" ;
    sh:description "Represents selected Audience Network positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/behaviors> ;
    sh:name "behaviors" ;
    sh:description "Represents behaviors included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/brandSafetyContentFilterLevels> ;
    sh:name "brand safety content filter levels" ;
    sh:description "Represents brand-safety content filter levels used in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/catalogBasedTargeting> ;
    sh:name "catalog based targeting" ;
    sh:description "Represents catalog-based targeting settings." ;
    sh:node meta:CatalogBasedTargetingShape ;
    sh:class meta:CatalogBasedTargeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/cities> ;
    sh:name "cities" ;
    sh:description "Represents cities included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/collegeYears> ;
    sh:name "college years" ;
    sh:description "Represents college years included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/connections> ;
    sh:name "connections" ;
    sh:description "Represents connections included in the targeting." ;
    sh:node meta:ConnectionsTargetingShape ;
    sh:class meta:ConnectionsTargeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/contextualTargetingCategories> ;
    sh:name "contextual targeting categories" ;
    sh:description "Represents contextual targeting categories." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/countries> ;
    sh:name "countries" ;
    sh:description "Represents countries included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/country> ;
    sh:name "country" ;
    sh:description "Represents country values used in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/countryGroups> ;
    sh:name "country groups" ;
    sh:description "Represents country groups included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/customAudiences> ;
    sh:name "custom audiences" ;
    sh:description "Represents custom audiences included in the targeting." ;
    sh:node meta:RawCustomAudienceShape ;
    sh:class meta:RawCustomAudience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/devicePlatforms> ;
    sh:name "device platforms" ;
    sh:description "Represents device platforms included in the targeting, including desktop or mobile." ;
    sh:datatype xsd:string ;
    sh:in ( "desktop" "mobile" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/directInstallDevices> ;
    sh:name "direct install devices" ;
    sh:description "Indicates whether direct-install devices are included in the targeting." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/dynamicAudienceIds> ;
    sh:name "dynamic audience ids" ;
    sh:description "Identifies dynamic audiences included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/educationMajors> ;
    sh:name "education majors" ;
    sh:description "Represents education majors included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/educationSchools> ;
    sh:name "education schools" ;
    sh:description "Represents education schools included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/educationStatuses> ;
    sh:name "education statuses" ;
    sh:description "Represents education statuses included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveAudienceNetworkPositions> ;
    sh:name "effective audience network positions" ;
    sh:description "Represents the effective Audience Network positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveBrandSafetyContentFilterLevels> ;
    sh:name "effective brand safety content filter levels" ;
    sh:description "Represents the effective brand-safety content filter levels." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveDevicePlatforms> ;
    sh:name "effective device platforms" ;
    sh:description "Represents the effective device platforms, including desktop or mobile." ;
    sh:datatype xsd:string ;
    sh:in ( "desktop" "mobile" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveFacebookPositions> ;
    sh:name "effective facebook positions" ;
    sh:description "Represents the effective Facebook positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveInstagramPositions> ;
    sh:name "effective instagram positions" ;
    sh:description "Represents the effective Instagram positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveMessengerPositions> ;
    sh:name "effective messenger positions" ;
    sh:description "Represents the effective Messenger positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectivePublisherPlatforms> ;
    sh:name "effective publisher platforms" ;
    sh:description "Represents the effective publisher platforms." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveThreadsPositions> ;
    sh:name "effective threads positions" ;
    sh:description "Represents the effective Threads positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/effectiveWhatsappPositions> ;
    sh:name "effective whatsapp positions" ;
    sh:description "Represents the effective WhatsApp positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/engagementSpecs> ;
    sh:name "engagement specs" ;
    sh:description "Represents engagement specifications used in the targeting." ;
    sh:node meta:TargetingDynamicRuleShape ;
    sh:class meta:TargetingDynamicRule ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/ethnicAffinity> ;
    sh:name "ethnic affinity" ;
    sh:description "Represents ethnic affinities included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludeReachedSince> ;
    sh:name "exclude reached since" ;
    sh:description "Represents values used to exclude people reached since a specified point." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedBrandSafetyContentTypes> ;
    sh:name "excluded brand safety content types" ;
    sh:description "Represents brand-safety content types excluded from the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedConnections> ;
    sh:name "excluded connections" ;
    sh:description "Represents connections excluded from the targeting." ;
    sh:node meta:ConnectionsTargetingShape ;
    sh:class meta:ConnectionsTargeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedCustomAudiences> ;
    sh:name "excluded custom audiences" ;
    sh:description "Represents custom audiences excluded from the targeting." ;
    sh:node meta:RawCustomAudienceShape ;
    sh:class meta:RawCustomAudience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedDynamicAudienceIds> ;
    sh:name "excluded dynamic audience ids" ;
    sh:description "Identifies dynamic audiences excluded from the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedEngagementSpecs> ;
    sh:name "excluded engagement specs" ;
    sh:description "Represents engagement specifications excluded from the targeting." ;
    sh:node meta:TargetingDynamicRuleShape ;
    sh:class meta:TargetingDynamicRule ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedGeoLocations> ;
    sh:name "excluded geo locations" ;
    sh:description "Represents geographic locations excluded from the targeting." ;
    sh:node meta:TargetingGeoLocationShape ;
    sh:class meta:TargetingGeoLocation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedMobileDeviceModel> ;
    sh:name "excluded mobile device model" ;
    sh:description "Represents mobile device models excluded from the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedProductAudienceSpecs> ;
    sh:name "excluded product audience specs" ;
    sh:description "Represents product audience specifications excluded from the targeting." ;
    sh:node meta:TargetingProductAudienceSpecShape ;
    sh:class meta:TargetingProductAudienceSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedPublisherCategories> ;
    sh:name "excluded publisher categories" ;
    sh:description "Represents publisher categories excluded from the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedPublisherListIds> ;
    sh:name "excluded publisher list ids" ;
    sh:description "Identifies publisher lists excluded from the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/excludedUserDevice> ;
    sh:name "excluded user device" ;
    sh:description "Represents user devices excluded from the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/exclusions> ;
    sh:name "exclusions" ;
    sh:description "Represents flexible targeting exclusions." ;
    sh:node meta:FlexibleTargetingShape ;
    sh:class meta:FlexibleTargeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/facebookPositions> ;
    sh:name "facebook positions" ;
    sh:description "Represents selected Facebook positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/familyStatuses> ;
    sh:name "family statuses" ;
    sh:description "Represents family statuses included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/fbDealId> ;
    sh:name "fb deal id" ;
    sh:description "Identifies the Facebook deal associated with the targeting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/flexibleSpec> ;
    sh:name "flexible spec" ;
    sh:description "Represents flexible targeting specifications." ;
    sh:node meta:FlexibleTargetingShape ;
    sh:class meta:FlexibleTargeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/friendsOfConnections> ;
    sh:name "friends of connections" ;
    sh:description "Represents friends of connections included in the targeting." ;
    sh:node meta:ConnectionsTargetingShape ;
    sh:class meta:ConnectionsTargeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/genders> ;
    sh:name "genders" ;
    sh:description "Represents genders included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/generation> ;
    sh:name "generation" ;
    sh:description "Represents generations included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/geoLocations> ;
    sh:name "geo locations" ;
    sh:description "Represents geographic locations included in the targeting." ;
    sh:node meta:TargetingGeoLocationShape ;
    sh:class meta:TargetingGeoLocation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/homeOwnership> ;
    sh:name "home ownership" ;
    sh:description "Represents home-ownership categories included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/homeType> ;
    sh:name "home type" ;
    sh:description "Represents home types included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/homeValue> ;
    sh:name "home value" ;
    sh:description "Represents home-value categories included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/householdComposition> ;
    sh:name "household composition" ;
    sh:description "Represents household compositions included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/income> ;
    sh:name "income" ;
    sh:description "Represents income categories included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/industries> ;
    sh:name "industries" ;
    sh:description "Represents industries included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/instagramPositions> ;
    sh:name "instagram positions" ;
    sh:description "Represents selected Instagram positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/installStateApplication> ;
    sh:name "install state application" ;
    sh:description "Represents the application installation state used in the targeting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/instreamVideoSkippableExcluded> ;
    sh:name "instream video skippable excluded" ;
    sh:description "Indicates whether skippable in-stream video placements are excluded." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/interestedIn> ;
    sh:name "interested in" ;
    sh:description "Represents interest categories included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/interests> ;
    sh:name "interests" ;
    sh:description "Represents interests included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/isWhatsappDestinationAd> ;
    sh:name "is whatsapp destination ad" ;
    sh:description "Indicates whether the ad has WhatsApp as its destination." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/keywords> ;
    sh:name "keywords" ;
    sh:description "Represents keywords included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/lifeEvents> ;
    sh:name "life events" ;
    sh:description "Represents life events included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/locales> ;
    sh:name "locales" ;
    sh:description "Represents locales included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/messengerPositions> ;
    sh:name "messenger positions" ;
    sh:description "Represents selected Messenger positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/moms> ;
    sh:name "moms" ;
    sh:description "Represents mother-related audience categories included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/netWorth> ;
    sh:name "net worth" ;
    sh:description "Represents net-worth categories included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/officeType> ;
    sh:name "office type" ;
    sh:description "Represents office types included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/placePageSetIds> ;
    sh:name "place page set ids" ;
    sh:description "Identifies place Page sets included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/politicalViews> ;
    sh:name "political views" ;
    sh:description "Represents political views included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/politics> ;
    sh:name "politics" ;
    sh:description "Represents political categories included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/productAudienceSpecs> ;
    sh:name "product audience specs" ;
    sh:description "Represents product audience specifications included in the targeting." ;
    sh:node meta:TargetingProductAudienceSpecShape ;
    sh:class meta:TargetingProductAudienceSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/prospectingAudience> ;
    sh:name "prospecting audience" ;
    sh:description "Represents prospecting audience settings." ;
    sh:node meta:TargetingProspectingAudienceShape ;
    sh:class meta:TargetingProspectingAudience ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/publisherPlatforms> ;
    sh:name "publisher platforms" ;
    sh:description "Represents publisher platforms included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/radius> ;
    sh:name "radius" ;
    sh:description "Represents the targeting radius." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/regions> ;
    sh:name "regions" ;
    sh:description "Represents regions included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/relationshipStatuses> ;
    sh:name "relationship statuses" ;
    sh:description "Represents relationship statuses included in the targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/siteCategory> ;
    sh:name "site category" ;
    sh:description "Represents site categories included in the targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/subscriberUniverse> ;
    sh:name "subscriber universe" ;
    sh:description "Represents subscriber-universe settings." ;
    sh:node meta:TargetingSubscriberUniverseShape ;
    sh:class meta:TargetingSubscriberUniverse ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/targetingAutomation> ;
    sh:name "targeting automation" ;
    sh:description "Represents targeting automation settings." ;
    sh:node meta:TargetingAutomationShape ;
    sh:class meta:TargetingAutomation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/targetingOptimization> ;
    sh:name "targeting optimization" ;
    sh:description "Represents the targeting optimization setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/targetingRelaxationTypes> ;
    sh:name "targeting relaxation types" ;
    sh:description "Represents targeting relaxation settings." ;
    sh:node meta:TargetingRelaxationShape ;
    sh:class meta:TargetingRelaxation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/threadsPositions> ;
    sh:name "threads positions" ;
    sh:description "Represents selected Threads positions." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/userAdclusters> ;
    sh:name "user adclusters" ;
    sh:description "Represents user ad clusters included in the targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/userAgeUnknown> ;
    sh:name "user age unknown" ;
    sh:description "Indicates whether users of unknown age are included in the targeting." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/userDevice> ;
    sh:name "user device" ;
    sh:description "Represents the devices included in the targeting criteria." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/userEvent> ;
    sh:name "user event" ;
    sh:description "Represents a user event included in the targeting criteria." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/userOs> ;
    sh:name "user os" ;
    sh:description "Represents the operating systems included in the targeting criteria." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/whatsappPositions> ;
    sh:name "whatsapp positions" ;
    sh:description "Represents the WhatsApp positions included in the targeting criteria." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/wirelessCarrier> ;
    sh:name "wireless carrier" ;
    sh:description "Represents the wireless carriers included in the targeting criteria." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/workEmployers> ;
    sh:name "work employers" ;
    sh:description "Represents the employers included in the targeting criteria." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/workPositions> ;
    sh:name "work positions" ;
    sh:description "Represents the work positions included in the targeting criteria." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Targeting/zips> ;
    sh:name "zips" ;
    sh:description "Represents the ZIP codes included in the targeting criteria." ;
    sh:datatype xsd:string ;
  ] .

# Shape for IDName
meta:IDNameShape a sh:NodeShape ;
  sh:targetClass meta:IDName ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IDName/id> ;
    sh:name "id" ;
    sh:description "Represents the identifier associated with the ID-and-name object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IDName/name> ;
    sh:name "name" ;
    sh:description "Represents the name associated with the ID-and-name object." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Catalog Based Targeting
meta:CatalogBasedTargetingShape a sh:NodeShape ;
  sh:targetClass meta:CatalogBasedTargeting ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CatalogBasedTargeting/geoTargetingType> ;
    sh:name "geo targeting type" ;
    sh:description "The geographic targeting type used by the catalog-based targeting configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Connections Targeting
meta:ConnectionsTargetingShape a sh:NodeShape ;
  sh:targetClass meta:ConnectionsTargeting ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConnectionsTargeting/id> ;
    sh:name "id" ;
    sh:description "The identifier of the connections targeting configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConnectionsTargeting/name> ;
    sh:name "name" ;
    sh:description "The name of the connections targeting configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Raw Custom Audience
meta:RawCustomAudienceShape a sh:NodeShape ;
  sh:targetClass meta:RawCustomAudience ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RawCustomAudience/id> ;
    sh:name "id" ;
    sh:description "The identifier of the raw custom audience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.RawCustomAudience/name> ;
    sh:name "name" ;
    sh:description "The name of the raw custom audience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Dynamic Rule
meta:TargetingDynamicRuleShape a sh:NodeShape ;
  sh:targetClass meta:TargetingDynamicRule ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/actionType> ;
    sh:name "action type" ;
    sh:description "Represents the type of action associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/adGroupId> ;
    sh:name "ad group id" ;
    sh:description "Identifies the ad group associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/campaignGroupId> ;
    sh:name "campaign group id" ;
    sh:description "Identifies the campaign group associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/campaignId> ;
    sh:name "campaign id" ;
    sh:description "Identifies the campaign associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/impressionCount> ;
    sh:name "impression count" ;
    sh:description "Represents the impression count associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/pageId> ;
    sh:name "page id" ;
    sh:description "Identifies the page associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/post> ;
    sh:name "post" ;
    sh:description "Represents the post associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingDynamicRule/retentionSeconds> ;
    sh:name "retention seconds" ;
    sh:description "Represents the retention duration associated with the dynamic rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location
meta:TargetingGeoLocationShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/cities> ;
    sh:name "cities" ;
    sh:description "Contains the cities included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationCityShape ;
    sh:class meta:TargetingGeoLocationCity ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/countries> ;
    sh:name "countries" ;
    sh:description "Contains the countries included in the geographic targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/countryGroups> ;
    sh:name "country groups" ;
    sh:description "Contains the country groups included in the geographic targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/customLocations> ;
    sh:name "custom locations" ;
    sh:description "Contains the custom locations included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationCustomLocationShape ;
    sh:class meta:TargetingGeoLocationCustomLocation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/electoralDistricts> ;
    sh:name "electoral districts" ;
    sh:description "Contains the electoral districts included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationElectoralDistrictShape ;
    sh:class meta:TargetingGeoLocationElectoralDistrict ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/geoMarkets> ;
    sh:name "geo markets" ;
    sh:description "Contains the geographic markets included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationMarketShape ;
    sh:class meta:TargetingGeoLocationMarket ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/largeGeoAreas> ;
    sh:name "large geo areas" ;
    sh:description "Contains the large geographic areas included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/locationClusterIds> ;
    sh:name "location cluster ids" ;
    sh:description "Contains the location clusters included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationLocationClusterShape ;
    sh:class meta:TargetingGeoLocationLocationCluster ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/locationTypes> ;
    sh:name "location types" ;
    sh:description "Contains the location types included in the geographic targeting." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/mediumGeoAreas> ;
    sh:name "medium geo areas" ;
    sh:description "Contains the medium geographic areas included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/metroAreas> ;
    sh:name "metro areas" ;
    sh:description "Contains the metropolitan areas included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/neighborhoods> ;
    sh:name "neighborhoods" ;
    sh:description "Contains the neighborhoods included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/places> ;
    sh:name "places" ;
    sh:description "Contains the places included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationPlaceShape ;
    sh:class meta:TargetingGeoLocationPlace ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/politicalDistricts> ;
    sh:name "political districts" ;
    sh:description "Contains the political districts included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationPoliticalDistrictShape ;
    sh:class meta:TargetingGeoLocationPoliticalDistrict ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/regions> ;
    sh:name "regions" ;
    sh:description "Contains the regions included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationRegionShape ;
    sh:class meta:TargetingGeoLocationRegion ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/smallGeoAreas> ;
    sh:name "small geo areas" ;
    sh:description "Contains the small geographic areas included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/subcities> ;
    sh:name "subcities" ;
    sh:description "Contains the subcities included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/subneighborhoods> ;
    sh:name "subneighborhoods" ;
    sh:description "Contains the subneighborhoods included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationGeoEntitiesShape ;
    sh:class meta:TargetingGeoLocationGeoEntities ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocation/zips> ;
    sh:name "zips" ;
    sh:description "Contains the ZIP codes included in the geographic targeting." ;
    sh:node meta:TargetingGeoLocationZipShape ;
    sh:class meta:TargetingGeoLocationZip ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] .

# Shape for Targeting Geo Location City
meta:TargetingGeoLocationCityShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationCity ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the city." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/distanceUnit> ;
    sh:name "distance unit" ;
    sh:description "Represents the distance unit associated with the city." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/key> ;
    sh:name "key" ;
    sh:description "Identifies the city." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/name> ;
    sh:name "name" ;
    sh:description "Represents the city name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/radius> ;
    sh:name "radius" ;
    sh:description "Represents the city radius." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/region> ;
    sh:name "region" ;
    sh:description "Represents the region associated with the city." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCity/regionId> ;
    sh:name "region id" ;
    sh:description "Identifies the region associated with the city." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Custom Location
meta:TargetingGeoLocationCustomLocationShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationCustomLocation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/addressString> ;
    sh:name "address string" ;
    sh:description "Represents the address of the custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/countryGroup> ;
    sh:name "country group" ;
    sh:description "Represents the country group associated with the custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/customType> ;
    sh:name "custom type" ;
    sh:description "Represents the type of custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/distanceUnit> ;
    sh:name "distance unit" ;
    sh:description "Represents the distance unit associated with the custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/key> ;
    sh:name "key" ;
    sh:description "Identifies the custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/latitude> ;
    sh:name "latitude" ;
    sh:description "Represents the latitude of the custom location." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/longitude> ;
    sh:name "longitude" ;
    sh:description "Represents the longitude of the custom location." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/maxPopulation> ;
    sh:name "max population" ;
    sh:description "Represents the maximum population associated with the custom location." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/minPopulation> ;
    sh:name "min population" ;
    sh:description "Represents the minimum population associated with the custom location." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/name> ;
    sh:name "name" ;
    sh:description "Represents the name of the custom location." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/primaryCityId> ;
    sh:name "primary city id" ;
    sh:description "Identifies the primary city associated with the custom location." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/radius> ;
    sh:name "radius" ;
    sh:description "Represents the radius of the custom location." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationCustomLocation/regionId> ;
    sh:name "region id" ;
    sh:description "Identifies the region associated with the custom location." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Electoral District
meta:TargetingGeoLocationElectoralDistrictShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationElectoralDistrict ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationElectoralDistrict/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the electoral district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationElectoralDistrict/deprecationCode> ;
    sh:name "deprecation code" ;
    sh:description "Represents the deprecation code associated with the electoral district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationElectoralDistrict/electoralDistrict> ;
    sh:name "electoral district" ;
    sh:description "Represents the electoral district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationElectoralDistrict/key> ;
    sh:name "key" ;
    sh:description "Identifies the electoral district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationElectoralDistrict/name> ;
    sh:name "name" ;
    sh:description "Represents the electoral district name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Market
meta:TargetingGeoLocationMarketShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationMarket ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationMarket/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the market." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationMarket/key> ;
    sh:name "key" ;
    sh:description "Identifies the market." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationMarket/marketType> ;
    sh:name "market type" ;
    sh:description "Represents the type of market." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationMarket/name> ;
    sh:name "name" ;
    sh:description "Represents the market name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Geo Entities
meta:TargetingGeoLocationGeoEntitiesShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationGeoEntities ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationGeoEntities/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the geographic entity." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationGeoEntities/key> ;
    sh:name "key" ;
    sh:description "Identifies the geographic entity." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationGeoEntities/name> ;
    sh:name "name" ;
    sh:description "Represents the geographic entity name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationGeoEntities/region> ;
    sh:name "region" ;
    sh:description "Represents the region associated with the geographic entity." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationGeoEntities/regionId> ;
    sh:name "region id" ;
    sh:description "Identifies the region associated with the geographic entity." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Location Cluster
meta:TargetingGeoLocationLocationClusterShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationLocationCluster ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationLocationCluster/key> ;
    sh:name "key" ;
    sh:description "Identifies the location cluster." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Place
meta:TargetingGeoLocationPlaceShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationPlace ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/distanceUnit> ;
    sh:name "distance unit" ;
    sh:description "Represents the distance unit associated with the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/key> ;
    sh:name "key" ;
    sh:description "Identifies the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/latitude> ;
    sh:name "latitude" ;
    sh:description "Represents the latitude of the place." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/longitude> ;
    sh:name "longitude" ;
    sh:description "Represents the longitude of the place." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/name> ;
    sh:name "name" ;
    sh:description "Represents the place name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/primaryCityId> ;
    sh:name "primary city id" ;
    sh:description "Identifies the primary city associated with the place." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/radius> ;
    sh:name "radius" ;
    sh:description "Represents the radius of the place." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPlace/regionId> ;
    sh:name "region id" ;
    sh:description "Identifies the region associated with the place." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Political District
meta:TargetingGeoLocationPoliticalDistrictShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationPoliticalDistrict ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPoliticalDistrict/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the political district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPoliticalDistrict/key> ;
    sh:name "key" ;
    sh:description "Identifies the political district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPoliticalDistrict/name> ;
    sh:name "name" ;
    sh:description "Represents the political district name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationPoliticalDistrict/politicalDistrict> ;
    sh:name "political district" ;
    sh:description "Represents the political district." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Region
meta:TargetingGeoLocationRegionShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationRegion ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationRegion/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the region." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationRegion/key> ;
    sh:name "key" ;
    sh:description "Identifies the region." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationRegion/name> ;
    sh:name "name" ;
    sh:description "Represents the region name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Geo Location Zip
meta:TargetingGeoLocationZipShape a sh:NodeShape ;
  sh:targetClass meta:TargetingGeoLocationZip ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationZip/country> ;
    sh:name "country" ;
    sh:description "Identifies the country associated with the ZIP code." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationZip/key> ;
    sh:name "key" ;
    sh:description "Identifies the ZIP code." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationZip/name> ;
    sh:name "name" ;
    sh:description "Represents the ZIP code name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationZip/primaryCityId> ;
    sh:name "primary city id" ;
    sh:description "Identifies the primary city associated with the ZIP code." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingGeoLocationZip/regionId> ;
    sh:name "region id" ;
    sh:description "Identifies the region associated with the ZIP code." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Product Audience Spec
meta:TargetingProductAudienceSpecShape a sh:NodeShape ;
  sh:targetClass meta:TargetingProductAudienceSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProductAudienceSpec/exclusions> ;
    sh:name "exclusions" ;
    sh:description "Contains the product audience specifications excluded from the targeting." ;
    sh:node meta:TargetingProductAudienceSubSpecShape ;
    sh:class meta:TargetingProductAudienceSubSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProductAudienceSpec/inclusions> ;
    sh:name "inclusions" ;
    sh:description "Contains the product audience specifications included in the targeting." ;
    sh:node meta:TargetingProductAudienceSubSpecShape ;
    sh:class meta:TargetingProductAudienceSubSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProductAudienceSpec/productSetId> ;
    sh:name "product set id" ;
    sh:description "Identifies the product set associated with the audience specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Product Audience Sub Spec
meta:TargetingProductAudienceSubSpecShape a sh:NodeShape ;
  sh:targetClass meta:TargetingProductAudienceSubSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProductAudienceSubSpec/minRetentionSeconds> ;
    sh:name "min retention seconds" ;
    sh:description "Represents the minimum retention duration associated with the product audience specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProductAudienceSubSpec/retentionSeconds> ;
    sh:name "retention seconds" ;
    sh:description "Represents the retention duration associated with the product audience specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProductAudienceSubSpec/rule> ;
    sh:name "rule" ;
    sh:description "Represents the rule associated with the product audience specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Flexible Targeting
meta:FlexibleTargetingShape a sh:NodeShape ;
  sh:targetClass meta:FlexibleTargeting ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/behaviors> ;
    sh:name "behaviors" ;
    sh:description "Represents the behaviors included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/collegeYears> ;
    sh:name "college years" ;
    sh:description "Represents the college years included in flexible targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/connections> ;
    sh:name "connections" ;
    sh:description "Represents the connections included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/customAudiences> ;
    sh:name "custom audiences" ;
    sh:description "Represents the custom audiences included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/educationMajors> ;
    sh:name "education majors" ;
    sh:description "Represents the education majors included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/educationSchools> ;
    sh:name "education schools" ;
    sh:description "Represents the education schools included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/educationStatuses> ;
    sh:name "education statuses" ;
    sh:description "Represents the education statuses included in flexible targeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/ethnicAffinity> ;
    sh:name "ethnic affinity" ;
    sh:description "Represents the ethnic affinities included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/familyStatuses> ;
    sh:name "family statuses" ;
    sh:description "Represents the family statuses included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/friendsOfConnections> ;
    sh:name "friends of connections" ;
    sh:description "Represents the friends of connections included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/generation> ;
    sh:name "generation" ;
    sh:description "Represents the generations included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/homeOwnership> ;
    sh:name "home ownership" ;
    sh:description "Represents the home ownership categories included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/homeType> ;
    sh:name "home type" ;
    sh:description "Represents the home types included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/homeValue> ;
    sh:name "home value" ;
    sh:description "Represents the home value categories included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/householdComposition> ;
    sh:name "household composition" ;
    sh:description "Represents the household composition categories included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/income> ;
    sh:name "income" ;
    sh:description "Represents the income categories included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/industries> ;
    sh:name "industries" ;
    sh:description "Represents the industries included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/interestedIn> ;
    sh:name "interested in" ;
    sh:description "Represents the categories of people or things targeted by the interested-in criteria." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/interests> ;
    sh:name "interests" ;
    sh:description "Represents the interests included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/lifeEvents> ;
    sh:name "life events" ;
    sh:description "Represents the life events included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/moms> ;
    sh:name "moms" ;
    sh:description "Represents the mother-related categories included in flexible targeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/netWorth> ;
    sh:name "net worth" ;
    sh:description "Represents net-worth targeting criteria in FlexibleTargeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/officeType> ;
    sh:name "office type" ;
    sh:description "Represents office-type targeting criteria in FlexibleTargeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/politics> ;
    sh:name "politics" ;
    sh:description "Represents political targeting criteria in FlexibleTargeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/relationshipStatuses> ;
    sh:name "relationship statuses" ;
    sh:description "Represents relationship-status targeting criteria in FlexibleTargeting." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/userAdclusters> ;
    sh:name "user adclusters" ;
    sh:description "Represents user ad-cluster targeting criteria in FlexibleTargeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/workEmployers> ;
    sh:name "work employers" ;
    sh:description "Represents employer-based targeting criteria in FlexibleTargeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FlexibleTargeting/workPositions> ;
    sh:name "work positions" ;
    sh:description "Represents work-position targeting criteria in FlexibleTargeting." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] .

# Shape for Targeting Prospecting Audience
meta:TargetingProspectingAudienceShape a sh:NodeShape ;
  sh:targetClass meta:TargetingProspectingAudience ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingProspectingAudience/sources> ;
    sh:name "sources" ;
    sh:description "Represents the sources associated with the prospecting audience." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Subscriber Universe
meta:TargetingSubscriberUniverseShape a sh:NodeShape ;
  sh:targetClass meta:TargetingSubscriberUniverse ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingSubscriberUniverse/messagingCustomerBaseForWhatsapp> ;
    sh:name "messaging customer base for whatsapp" ;
    sh:description "Represents the messaging customer base for WhatsApp in the subscriber universe." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingSubscriberUniverse/messengerSubscriberPool> ;
    sh:name "messenger subscriber pool" ;
    sh:description "Represents the Messenger subscriber pool in the subscriber universe." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingSubscriberUniverse/messengerSubscriberSource> ;
    sh:name "messenger subscriber source" ;
    sh:description "Represents the source of Messenger subscribers in the subscriber universe." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingSubscriberUniverse/whatsappSubscriberSource> ;
    sh:name "whatsapp subscriber source" ;
    sh:description "Represents the source of WhatsApp subscribers in the subscriber universe." ;
    sh:node meta:IDNameShape ;
    sh:class meta:IDName ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Automation
meta:TargetingAutomationShape a sh:NodeShape ;
  sh:targetClass meta:TargetingAutomation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingAutomation/advantageAudience> ;
    sh:name "advantage audience" ;
    sh:description "Represents the Advantage audience automation setting." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingAutomation/creativeAudiencePairing> ;
    sh:name "creative audience pairing" ;
    sh:description "Represents the creative-audience pairing automation setting." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingAutomation/individualSetting> ;
    sh:name "individual setting" ;
    sh:description "Represents an individual targeting automation setting." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingAutomation/sharedAudiences> ;
    sh:name "shared audiences" ;
    sh:description "Represents the shared audiences automation setting." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingAutomation/valueExpression> ;
    sh:name "value expression" ;
    sh:description "Represents the value expression automation setting." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Targeting Relaxation
meta:TargetingRelaxationShape a sh:NodeShape ;
  sh:targetClass meta:TargetingRelaxation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingRelaxation/customAudience> ;
    sh:name "custom audience" ;
    sh:description "Represents the custom-audience setting for targeting relaxation." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TargetingRelaxation/lookalike> ;
    sh:name "lookalike" ;
    sh:description "Represents the lookalike setting for targeting relaxation." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Placement Soft Opt Out
meta:PlacementSoftOptOutShape a sh:NodeShape ;
  sh:targetClass meta:PlacementSoftOptOut ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/audienceNetworkPositions> ;
    sh:name "audience network positions" ;
    sh:description "Represents the Audience Network positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/facebookPositions> ;
    sh:name "facebook positions" ;
    sh:description "Represents the Facebook positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/instagramPositions> ;
    sh:name "instagram positions" ;
    sh:description "Represents the Instagram positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/messengerPositions> ;
    sh:name "messenger positions" ;
    sh:description "Represents the Messenger positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/oculusPositions> ;
    sh:name "oculus positions" ;
    sh:description "Represents the Oculus positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/threadsPositions> ;
    sh:name "threads positions" ;
    sh:description "Represents the Threads positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PlacementSoftOptOut/whatsappPositions> ;
    sh:name "whatsapp positions" ;
    sh:description "Represents the WhatsApp positions for the soft opt-out placement." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Trending Topics Spec
meta:TrendingTopicsSpecShape a sh:NodeShape ;
  sh:targetClass meta:TrendingTopicsSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrendingTopicsSpec/isAllTrending> ;
    sh:name "is all trending" ;
    sh:description "Indicates whether the trending-topics specification represents all trending topics." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrendingTopicsSpec/isSpecialBudgetAlloc> ;
    sh:name "is special budget alloc" ;
    sh:description "Indicates whether the trending-topics specification has special budget allocation." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrendingTopicsSpec/trendingTopics> ;
    sh:name "trending topics" ;
    sh:description "Represents the trending topics in the specification." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Page Category
meta:PageCategoryShape a sh:NodeShape ;
  sh:targetClass meta:PageCategory ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageCategory/apiEnum> ;
    sh:name "api enum" ;
    sh:description "Represents the API enumeration associated with the Page category." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageCategory/fbPageCategories> ;
    sh:name "fb page categories" ;
    sh:description "Represents the Facebook Page categories associated with the Page category." ;
    sh:class meta:PageCategory ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageCategory/id> ;
    sh:name "id" ;
    sh:description "Represents the identifier of the Page category." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageCategory/name> ;
    sh:name "name" ;
    sh:description "Represents the name of the Page category." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for IGUser
meta:IGUserShape a sh:NodeShape ;
  sh:targetClass meta:IGUser ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/biography> ;
    sh:name "biography" ;
    sh:description "Represents the biography associated with the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/businessDiscovery> ;
    sh:name "business discovery" ;
    sh:description "Contains business discovery information associated with the user." ;
    sh:class meta:IGUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/collaborativeMediaSearch> ;
    sh:name "collaborative media search" ;
    sh:description "Contains collaborative media search information associated with the user." ;
    sh:node meta:ShadowIGUserCollaborativeMediaShape ;
    sh:class meta:ShadowIGUserCollaborativeMedia ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/followersCount> ;
    sh:name "followers count" ;
    sh:description "Represents the number of followers associated with the user." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/followsCount> ;
    sh:name "follows count" ;
    sh:description "Represents the number of accounts followed by the user." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/hasProfilePic> ;
    sh:name "has profile pic" ;
    sh:description "Indicates whether the user has a profile picture." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/id> ;
    sh:name "id" ;
    sh:description "Identifies the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/igId> ;
    sh:name "ig id" ;
    sh:description "Represents an Instagram identifier for the user." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/isPublished> ;
    sh:name "is published" ;
    sh:description "Indicates whether the user is published." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/legacyInstagramUserId> ;
    sh:name "legacy instagram user id" ;
    sh:description "Represents a legacy Instagram identifier for the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/mediaCount> ;
    sh:name "media count" ;
    sh:description "Represents the number of media items associated with the user." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/mentionedComment> ;
    sh:name "mentioned comment" ;
    sh:description "Contains the comment associated with a mention of the user." ;
    sh:node meta:IGCommentShape ;
    sh:class meta:IGComment ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/mentionedMedia> ;
    sh:name "mentioned media" ;
    sh:description "Contains the media associated with a mention of the user." ;
    sh:node meta:IGMediaShape ;
    sh:class meta:IGMedia ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/miniShopStorefront> ;
    sh:name "mini shop storefront" ;
    sh:description "Contains the mini shop storefront associated with the user." ;
    sh:node meta:ShopShape ;
    sh:class meta:Shop ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/name> ;
    sh:name "name" ;
    sh:description "Represents the user's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/ownerBusiness> ;
    sh:name "owner business" ;
    sh:description "Contains the business associated with the user as its owner." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/profilePictureUrl> ;
    sh:name "profile picture url" ;
    sh:description "Provides the URL of the user's profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/shoppingProductTagEligibility> ;
    sh:name "shopping product tag eligibility" ;
    sh:description "Indicates whether the user is eligible for shopping product tagging." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/shoppingReviewStatus> ;
    sh:name "shopping review status" ;
    sh:description "Represents the user's shopping review status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/username> ;
    sh:name "username" ;
    sh:description "Represents the user's username." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGUser/website> ;
    sh:name "website" ;
    sh:description "Provides the website associated with the user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Shadow IGUser Collaborative Media
meta:ShadowIGUserCollaborativeMediaShape a sh:NodeShape ;
  sh:targetClass meta:ShadowIGUserCollaborativeMedia ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/caption> ;
    sh:name "caption" ;
    sh:description "The caption of the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/commentsCount> ;
    sh:name "comments count" ;
    sh:description "The number of comments associated with the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/id> ;
    sh:name "id" ;
    sh:description "The identifier of the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/likeCount> ;
    sh:name "like count" ;
    sh:description "The number of likes associated with the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/mediaProductType> ;
    sh:name "media product type" ;
    sh:description "The product type of the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/mediaType> ;
    sh:name "media type" ;
    sh:description "The type of the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/mediaUrl> ;
    sh:name "media url" ;
    sh:description "The URL of the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/permalink> ;
    sh:name "permalink" ;
    sh:description "The permalink of the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/repostsCount> ;
    sh:name "reposts count" ;
    sh:description "The number of reposts of the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/savedCount> ;
    sh:name "saved count" ;
    sh:description "The number of times the collaborative media was saved." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/sharesCount> ;
    sh:name "shares count" ;
    sh:description "The number of shares of the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/thumbnailUrl> ;
    sh:name "thumbnail url" ;
    sh:description "The URL of the collaborative media thumbnail." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/timestamp> ;
    sh:name "timestamp" ;
    sh:description "The timestamp associated with the collaborative media." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/totalCommentsCount> ;
    sh:name "total comments count" ;
    sh:description "The total number of comments associated with the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/totalLikeCount> ;
    sh:name "total like count" ;
    sh:description "The total number of likes associated with the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/totalViewsCount> ;
    sh:name "total views count" ;
    sh:description "The total number of views of the collaborative media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ShadowIGUserCollaborativeMedia/username> ;
    sh:name "username" ;
    sh:description "The username associated with the collaborative media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for IGComment
meta:IGCommentShape a sh:NodeShape ;
  sh:targetClass meta:IGComment ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/from> ;
    sh:name "from" ;
    sh:description "Represents the user associated with the Instagram comment." ;
    sh:node meta:IGCommentFromUserShape ;
    sh:class meta:IGCommentFromUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/hidden> ;
    sh:name "hidden" ;
    sh:description "Indicates whether the Instagram comment is hidden." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/id> ;
    sh:name "id" ;
    sh:description "Represents the Instagram comment's identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/legacyInstagramCommentId> ;
    sh:name "legacy instagram comment id" ;
    sh:description "Represents the legacy Instagram comment identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/likeCount> ;
    sh:name "like count" ;
    sh:description "Represents the number of likes on the Instagram comment." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/media> ;
    sh:name "media" ;
    sh:description "Represents the Instagram media associated with the comment." ;
    sh:node meta:IGMediaShape ;
    sh:class meta:IGMedia ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/parentId> ;
    sh:name "parent id" ;
    sh:description "Represents the identifier of the parent comment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/text> ;
    sh:name "text" ;
    sh:description "Represents the text of the Instagram comment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/timestamp> ;
    sh:name "timestamp" ;
    sh:description "Represents when the Instagram comment was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/user> ;
    sh:name "user" ;
    sh:description "Represents the Instagram user associated with the comment." ;
    sh:class meta:IGUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGComment/username> ;
    sh:name "username" ;
    sh:description "Represents the username associated with the Instagram comment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for IGComment From User
meta:IGCommentFromUserShape a sh:NodeShape ;
  sh:targetClass meta:IGCommentFromUser ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGCommentFromUser/id> ;
    sh:name "id" ;
    sh:description "Represents the identifier of the user associated with the comment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGCommentFromUser/selfIgScopedId> ;
    sh:name "self ig scoped id" ;
    sh:description "Represents the user's Instagram-scoped identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGCommentFromUser/username> ;
    sh:name "username" ;
    sh:description "Represents the username of the user associated with the comment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for IGMedia
meta:IGMediaShape a sh:NodeShape ;
  sh:targetClass meta:IGMedia ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/altText> ;
    sh:name "alt text" ;
    sh:description "Represents the alternative text for the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/audioId> ;
    sh:name "audio id" ;
    sh:description "Represents the identifier of the audio associated with the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/boostEligibilityInfo> ;
    sh:name "boost eligibility info" ;
    sh:description "Represents boost-eligibility information for the Instagram media." ;
    sh:node meta:IGMediaBoostEligibilityInfoShape ;
    sh:class meta:IGMediaBoostEligibilityInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/caption> ;
    sh:name "caption" ;
    sh:description "Represents the caption of the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/commentsCount> ;
    sh:name "comments count" ;
    sh:description "Represents the number of comments on the Instagram media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/copyrightCheckInformation> ;
    sh:name "copyright check information" ;
    sh:description "Represents copyright-check match information for the Instagram media." ;
    sh:node meta:IGVideoCopyrightCheckMatchesInformationShape ;
    sh:class meta:IGVideoCopyrightCheckMatchesInformation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/currentLiveViewerCount> ;
    sh:name "current live viewer count" ;
    sh:description "Represents the current number of viewers of the live Instagram media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/hasPoll> ;
    sh:name "has poll" ;
    sh:description "Indicates whether the Instagram media has a poll." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/hasSlider> ;
    sh:name "has slider" ;
    sh:description "Indicates whether the Instagram media has a slider." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/id> ;
    sh:name "id" ;
    sh:description "Represents the Instagram media's identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/igId> ;
    sh:name "ig id" ;
    sh:description "Represents the Instagram identifier of the media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/isAiGenerated> ;
    sh:name "is ai generated" ;
    sh:description "Indicates whether the Instagram media is AI-generated." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/isCommentEnabled> ;
    sh:name "is comment enabled" ;
    sh:description "Indicates whether commenting is enabled for the Instagram media." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/isSharedToFeed> ;
    sh:name "is shared to feed" ;
    sh:description "Indicates whether the Instagram media is shared to the feed." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/legacyInstagramMediaId> ;
    sh:name "legacy instagram media id" ;
    sh:description "Represents the legacy Instagram media identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/likeCount> ;
    sh:name "like count" ;
    sh:description "Represents the number of likes on the Instagram media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/mediaAudioType> ;
    sh:name "media audio type" ;
    sh:description "Represents the audio type of the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/mediaProductType> ;
    sh:name "media product type" ;
    sh:description "Represents the product type of the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/mediaType> ;
    sh:name "media type" ;
    sh:description "Represents the type of the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/mediaUrl> ;
    sh:name "media url" ;
    sh:description "Represents the URL of the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/owner> ;
    sh:name "owner" ;
    sh:description "Represents the Instagram user who owns the media." ;
    sh:class meta:IGUser ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/permalink> ;
    sh:name "permalink" ;
    sh:description "Represents the permanent link to the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/repostsCount> ;
    sh:name "reposts count" ;
    sh:description "Represents the number of reposts of the Instagram media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/savedCount> ;
    sh:name "saved count" ;
    sh:description "Represents the number of times the Instagram media was saved." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/sharesCount> ;
    sh:name "shares count" ;
    sh:description "Represents the number of shares of the Instagram media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/shortcode> ;
    sh:name "shortcode" ;
    sh:description "Represents the shortcode of the Instagram media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/thumbnailUrl> ;
    sh:name "thumbnail url" ;
    sh:description "Represents the URL of the Instagram media thumbnail." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/timestamp> ;
    sh:name "timestamp" ;
    sh:description "Represents when the Instagram media was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/totalCommentsCount> ;
    sh:name "total comments count" ;
    sh:description "Represents the total number of comments on the Instagram media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/totalLikeCount> ;
    sh:name "total like count" ;
    sh:description "Represents the total number of likes associated with the media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/totalViewsCount> ;
    sh:name "total views count" ;
    sh:description "Represents the total number of views associated with the media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/username> ;
    sh:name "username" ;
    sh:description "Identifies the username associated with the media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/videoTitle> ;
    sh:name "video title" ;
    sh:description "Represents the title of the video media." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMedia/viewCount> ;
    sh:name "view count" ;
    sh:description "Represents the number of views associated with the media." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for IGMedia Boost Eligibility Info
meta:IGMediaBoostEligibilityInfoShape a sh:NodeShape ;
  sh:targetClass meta:IGMediaBoostEligibilityInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMediaBoostEligibilityInfo/boostIneligibleReason> ;
    sh:name "boost ineligible reason" ;
    sh:description "Describes the reason the media is not eligible for boosting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGMediaBoostEligibilityInfo/eligibleToBoost> ;
    sh:name "eligible to boost" ;
    sh:description "Indicates whether the media is eligible for boosting." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for IGVideo Copyright Check Matches Information
meta:IGVideoCopyrightCheckMatchesInformationShape a sh:NodeShape ;
  sh:targetClass meta:IGVideoCopyrightCheckMatchesInformation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGVideoCopyrightCheckMatchesInformation/copyrightMatches> ;
    sh:name "copyright matches" ;
    sh:description "Contains the copyright matches identified for the video." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGVideoCopyrightCheckMatchesInformation/status> ;
    sh:name "status" ;
    sh:description "Represents the status of the video copyright check." ;
    sh:node meta:IGVideoCopyrightCheckStatusShape ;
    sh:class meta:IGVideoCopyrightCheckStatus ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for IGVideo Copyright Check Status
meta:IGVideoCopyrightCheckStatusShape a sh:NodeShape ;
  sh:targetClass meta:IGVideoCopyrightCheckStatus ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGVideoCopyrightCheckStatus/matchesFound> ;
    sh:name "matches found" ;
    sh:description "Indicates whether copyright matches were found." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IGVideoCopyrightCheckStatus/status> ;
    sh:name "status" ;
    sh:description "Represents the status of the video copyright check." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Shop
meta:ShopShape a sh:NodeShape ;
  sh:targetClass meta:Shop ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Shop/commerceMerchantSettings> ;
    sh:name "commerce merchant settings" ;
    sh:description "Represents the commerce merchant settings associated with the shop." ;
    sh:node meta:CommerceMerchantSettingsShape ;
    sh:class meta:CommerceMerchantSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Shop/fbSalesChannel> ;
    sh:name "fb sales channel" ;
    sh:description "Represents the shop’s Facebook sales channel information." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Shop/id> ;
    sh:name "id" ;
    sh:description "Identifies the shop." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Shop/igSalesChannel> ;
    sh:name "ig sales channel" ;
    sh:description "Represents the shop’s Instagram sales channel information." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Shop/shopStatus> ;
    sh:name "shop status" ;
    sh:description "Represents the shop’s status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Shop/workspace> ;
    sh:name "workspace" ;
    sh:description "Represents the workspace associated with the shop." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Commerce Merchant Settings
meta:CommerceMerchantSettingsShape a sh:NodeShape ;
  sh:targetClass meta:CommerceMerchantSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/checkoutConfig> ;
    sh:name "checkout config" ;
    sh:description "The checkout configuration for the merchant." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/contactEmail> ;
    sh:name "contact email" ;
    sh:description "The merchant's contact email address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/displayName> ;
    sh:name "display name" ;
    sh:description "The display name of the merchant." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/facebookChannel> ;
    sh:name "facebook channel" ;
    sh:description "The Facebook channel configuration for the merchant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/id> ;
    sh:name "id" ;
    sh:description "The identifier of the merchant settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/instagramChannel> ;
    sh:name "instagram channel" ;
    sh:description "The Instagram channel configuration for the merchant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/koreaFtcListing> ;
    sh:name "korea ftc listing" ;
    sh:description "The merchant's Korea FTC listing." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/merchantPage> ;
    sh:name "merchant page" ;
    sh:description "The profile representing the merchant's page." ;
    sh:node meta:ProfileShape ;
    sh:class meta:Profile ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/merchantStatus> ;
    sh:name "merchant status" ;
    sh:description "The merchant's status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/offsiteIabCheckoutEnabledCountries> ;
    sh:name "offsite iab checkout enabled countries" ;
    sh:description "The countries where offsite IAB checkout is enabled for the merchant." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/paymentProvider> ;
    sh:name "payment provider" ;
    sh:description "The payment provider associated with the merchant." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/privacyPolicyLocalized> ;
    sh:name "privacy policy localized" ;
    sh:description "The merchant's localized privacy policy." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/shopsAdsSetup> ;
    sh:name "shops ads setup" ;
    sh:description "The merchant's Shops ads setup." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CommerceMerchantSettings/terms> ;
    sh:name "terms" ;
    sh:description "The merchant's terms." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Profile
meta:ProfileShape a sh:NodeShape ;
  sh:targetClass meta:Profile ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/canPost> ;
    sh:name "can post" ;
    sh:description "Indicates whether the profile can post." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/id> ;
    sh:name "id" ;
    sh:description "The identifier of the profile." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/link> ;
    sh:name "link" ;
    sh:description "The link associated with the profile." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/name> ;
    sh:name "name" ;
    sh:description "The name of the profile." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/pic> ;
    sh:name "pic" ;
    sh:description "The profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/picCrop> ;
    sh:name "pic crop" ;
    sh:description "The cropped profile picture and its associated source information." ;
    sh:node meta:ProfilePictureSourceShape ;
    sh:class meta:ProfilePictureSource ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/picLarge> ;
    sh:name "pic large" ;
    sh:description "The large version of the profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/picSmall> ;
    sh:name "pic small" ;
    sh:description "The small version of the profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/picSquare> ;
    sh:name "pic square" ;
    sh:description "The square version of the profile picture." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/profileType> ;
    sh:name "profile type" ;
    sh:description "The type of profile, such as an application, event, group, page, or user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "application" "event" "group" "page" "user" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Profile/username> ;
    sh:name "username" ;
    sh:description "The username of the profile." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Profile Picture Source
meta:ProfilePictureSourceShape a sh:NodeShape ;
  sh:targetClass meta:ProfilePictureSource ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/bottom> ;
    sh:name "bottom" ;
    sh:description "The bottom boundary position of the profile picture source." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/cacheKey> ;
    sh:name "cache key" ;
    sh:description "The cache key associated with the profile picture source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/height> ;
    sh:name "height" ;
    sh:description "The height of the profile picture source." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/isSilhouette> ;
    sh:name "is silhouette" ;
    sh:description "Indicates whether the profile picture source is a silhouette." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/left> ;
    sh:name "left" ;
    sh:description "The left boundary position of the profile picture source." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/right> ;
    sh:name "right" ;
    sh:description "The right boundary position of the profile picture source." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/top> ;
    sh:name "top" ;
    sh:description "The top boundary position of the profile picture source." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/url> ;
    sh:name "url" ;
    sh:description "The URL of the profile picture source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProfilePictureSource/width> ;
    sh:name "width" ;
    sh:description "The width of the profile picture source." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Mailing Address
meta:MailingAddressShape a sh:NodeShape ;
  sh:targetClass meta:MailingAddress ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/city> ;
    sh:name "city" ;
    sh:description "Represents the city in the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/cityPage> ;
    sh:name "city page" ;
    sh:description "Contains the Page associated with the city in the mailing address." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/country> ;
    sh:name "country" ;
    sh:description "Represents the country in the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/id> ;
    sh:name "id" ;
    sh:description "Identifies the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/postalCode> ;
    sh:name "postal code" ;
    sh:description "Represents the postal code in the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/region> ;
    sh:name "region" ;
    sh:description "Represents the region in the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/street1> ;
    sh:name "street1" ;
    sh:description "Represents the primary street information in the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MailingAddress/street2> ;
    sh:name "street2" ;
    sh:description "Represents additional street information in the mailing address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Copyright Attribution Insights
meta:CopyrightAttributionInsightsShape a sh:NodeShape ;
  sh:targetClass meta:CopyrightAttributionInsights ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightAttributionInsights/l7AttributionPageView> ;
    sh:name "l7attribution page view" ;
    sh:description "Represents the seven-day attribution page-view value in copyright insights." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightAttributionInsights/l7AttributionPageViewDelta> ;
    sh:name "l7attribution page view delta" ;
    sh:description "Represents the change in the seven-day attribution page-view value in copyright insights." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightAttributionInsights/l7AttributionVideoView> ;
    sh:name "l7attribution video view" ;
    sh:description "Represents the seven-day attribution video-view value in copyright insights." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightAttributionInsights/l7AttributionVideoViewDelta> ;
    sh:name "l7attribution video view delta" ;
    sh:description "Represents the change in the seven-day attribution video-view value in copyright insights." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightAttributionInsights/metricsEndingDate> ;
    sh:name "metrics ending date" ;
    sh:description "Represents the date on which the copyright insight metrics end." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Engagement
meta:EngagementShape a sh:NodeShape ;
  sh:targetClass meta:Engagement ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/count> ;
    sh:name "count" ;
    sh:description "Represents the engagement count." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/countString> ;
    sh:name "count string" ;
    sh:description "Represents the engagement count as a string." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/countStringWithLike> ;
    sh:name "count string with like" ;
    sh:description "Represents the engagement count as a string including likes." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/countStringWithoutLike> ;
    sh:name "count string without like" ;
    sh:description "Represents the engagement count as a string excluding likes." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/socialSentence> ;
    sh:name "social sentence" ;
    sh:description "Represents the social sentence for the engagement." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/socialSentenceWithLike> ;
    sh:name "social sentence with like" ;
    sh:description "Represents the social sentence for the engagement including likes." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Engagement/socialSentenceWithoutLike> ;
    sh:name "social sentence without like" ;
    sh:description "Represents the social sentence for the engagement excluding likes." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Video
meta:AdVideoShape a sh:NodeShape ;
  sh:targetClass meta:AdVideo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/adBreaks> ;
    sh:name "ad breaks" ;
    sh:description "Represents the ad breaks associated with the video." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/adminCreator> ;
    sh:name "admin creator" ;
    sh:description "Identifies the administrator who created the video." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/audioIsrc> ;
    sh:name "audio isrc" ;
    sh:description "Identifies the audio recording associated with the video." ;
    sh:node meta:AudioIsrcShape ;
    sh:class meta:AudioIsrc ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/backdatedTime> ;
    sh:name "backdated time" ;
    sh:description "Indicates the backdated time associated with the video." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/backdatedTimeGranularity> ;
    sh:name "backdated time granularity" ;
    sh:description "Represents the granularity of the video's backdated time." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/boostEligibilityInfo> ;
    sh:name "boost eligibility info" ;
    sh:description "Provides information about the video's eligibility for boosting." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/contentCategory> ;
    sh:name "content category" ;
    sh:description "Represents the category of the video content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/contentTags> ;
    sh:name "content tags" ;
    sh:description "Contains tags associated with the video content." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/copyright> ;
    sh:name "copyright" ;
    sh:description "Represents the copyright information for the video." ;
    sh:node meta:VideoCopyrightShape ;
    sh:class meta:VideoCopyright ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/copyrightCheckInformation> ;
    sh:name "copyright check information" ;
    sh:description "Provides information about the video's copyright check." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/copyrightMonitoringStatus> ;
    sh:name "copyright monitoring status" ;
    sh:description "Represents the copyright monitoring status of the video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/createdTime> ;
    sh:name "created time" ;
    sh:description "Indicates when the video was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/customLabels> ;
    sh:name "custom labels" ;
    sh:description "Contains custom labels associated with the video." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/description> ;
    sh:name "description" ;
    sh:description "Contains the description of the video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/embedHtml> ;
    sh:name "embed html" ;
    sh:description "Represents HTML associated with embedding the ad video." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/embeddable> ;
    sh:name "embeddable" ;
    sh:description "Indicates whether the ad video is embeddable." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/event> ;
    sh:name "event" ;
    sh:description "Represents an event associated with the ad video." ;
    sh:node meta:EventShape ;
    sh:class meta:Event ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/expiration> ;
    sh:name "expiration" ;
    sh:description "Represents expiration information for the ad video." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/format> ;
    sh:name "format" ;
    sh:description "Represents a list of format information for the ad video." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/from> ;
    sh:name "from" ;
    sh:description "Represents the entity associated with the ad video." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/icon> ;
    sh:name "icon" ;
    sh:description "Represents an icon associated with the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/id> ;
    sh:name "id" ;
    sh:description "Identifies the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/isCrosspostVideo> ;
    sh:name "is crosspost video" ;
    sh:description "Indicates whether the ad video is a cross-posted video." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/isCrosspostingEligible> ;
    sh:name "is crossposting eligible" ;
    sh:description "Indicates whether the ad video is eligible for cross-posting." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/isEpisode> ;
    sh:name "is episode" ;
    sh:description "Indicates whether the ad video is an episode." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/isInstagramEligible> ;
    sh:name "is instagram eligible" ;
    sh:description "Indicates whether the ad video is eligible for Instagram." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/isReferenceOnly> ;
    sh:name "is reference only" ;
    sh:description "Indicates whether the ad video is for reference only." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/length> ;
    sh:name "length" ;
    sh:description "Represents the length of the ad video." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/liveAudienceCount> ;
    sh:name "live audience count" ;
    sh:description "Represents the audience count for the live ad video." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/liveStatus> ;
    sh:name "live status" ;
    sh:description "Represents the live status of the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/musicVideoCopyright> ;
    sh:name "music video copyright" ;
    sh:description "Represents music video copyright information associated with the ad video." ;
    sh:node meta:MusicVideoCopyrightShape ;
    sh:class meta:MusicVideoCopyright ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/permalinkUrl> ;
    sh:name "permalink url" ;
    sh:description "Represents the permanent URL for the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/picture> ;
    sh:name "picture" ;
    sh:description "Represents a picture associated with the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/place> ;
    sh:name "place" ;
    sh:description "Represents a place associated with the ad video." ;
    sh:node meta:PlaceShape ;
    sh:class meta:Place ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/postId> ;
    sh:name "post id" ;
    sh:description "Identifies the post associated with the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/postViews> ;
    sh:name "post views" ;
    sh:description "Represents the number of views of the associated post." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/premiereLivingRoomStatus> ;
    sh:name "premiere living room status" ;
    sh:description "Represents the living room status of the video premiere." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/privacy> ;
    sh:name "privacy" ;
    sh:description "Represents the privacy settings of the ad video." ;
    sh:node meta:PrivacyShape ;
    sh:class meta:Privacy ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/published> ;
    sh:name "published" ;
    sh:description "Indicates whether the ad video is published." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/replaceAudioStatus> ;
    sh:name "replace audio status" ;
    sh:description "Represents the status of audio replacement for the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/scheduledPublishTime> ;
    sh:name "scheduled publish time" ;
    sh:description "Represents the scheduled publication time of the ad video." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/selectedAudioSpec> ;
    sh:name "selected audio spec" ;
    sh:description "Represents the selected audio specification for the ad video." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/source> ;
    sh:name "source" ;
    sh:description "Represents the source of the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/spherical> ;
    sh:name "spherical" ;
    sh:description "Indicates whether the ad video is spherical." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/status> ;
    sh:name "status" ;
    sh:description "Represents the status of the ad video." ;
    sh:node meta:VideoStatusShape ;
    sh:class meta:VideoStatus ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/title> ;
    sh:name "title" ;
    sh:description "Represents the title of the ad video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/universalVideoId> ;
    sh:name "universal video id" ;
    sh:description "Identifies the ad video across universal video records." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Represents when the ad video was last updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdVideo/views> ;
    sh:name "views" ;
    sh:description "Represents the number of views of the ad video." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Audio Isrc
meta:AudioIsrcShape a sh:NodeShape ;
  sh:targetClass meta:AudioIsrc ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/allKgFeaturedArtists> ;
    sh:name "all kg featured artists" ;
    sh:description "Represents all featured artists in the knowledge graph information for the audio ISRC." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/allKgMainArtists> ;
    sh:name "all kg main artists" ;
    sh:description "Represents all main artists in the knowledge graph information for the audio ISRC." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/artistProfilePictureUrl> ;
    sh:name "artist profile picture url" ;
    sh:description "Represents the profile picture URL of the artist associated with the audio ISRC." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/canonicalAudioAsset> ;
    sh:name "canonical audio asset" ;
    sh:description "Represents the canonical audio asset associated with the audio ISRC." ;
    sh:node meta:AudioAssetShape ;
    sh:class meta:AudioAsset ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/id> ;
    sh:name "id" ;
    sh:description "Identifies the audio ISRC record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/isrc> ;
    sh:name "isrc" ;
    sh:description "Represents the International Standard Recording Code associated with the audio record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/publishingRightsData> ;
    sh:name "publishing rights data" ;
    sh:description "Represents publishing rights information for the audio ISRC." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/topSearchableArtistId> ;
    sh:name "top searchable artist id" ;
    sh:description "Identifies the top searchable artist associated with the audio ISRC." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/topSearchableArtistName> ;
    sh:name "top searchable artist name" ;
    sh:description "Represents the name of the top searchable artist associated with the audio ISRC." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioIsrc/topSearchableArtistProfilePicUrl> ;
    sh:name "top searchable artist profile pic url" ;
    sh:description "Represents the profile picture URL of the top searchable artist associated with the audio ISRC." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Audio Asset
meta:AudioAssetShape a sh:NodeShape ;
  sh:targetClass meta:AudioAsset ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/allDdexFeaturedArtists> ;
    sh:name "all ddex featured artists" ;
    sh:description "Represents all featured artists in the DDEX information for the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/allDdexMainArtists> ;
    sh:name "all ddex main artists" ;
    sh:description "Represents all main artists in the DDEX information for the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/audioClusterId> ;
    sh:name "audio cluster id" ;
    sh:description "Identifies the audio cluster associated with the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/coverImageSource> ;
    sh:name "cover image source" ;
    sh:description "Represents the source of the audio asset's cover image." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/description> ;
    sh:name "description" ;
    sh:description "Represents the description of the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/displayArtist> ;
    sh:name "display artist" ;
    sh:description "Represents the artist displayed for the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/downloadHdUrl> ;
    sh:name "download hd url" ;
    sh:description "Represents the high-definition download URL for the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/downloadSdUrl> ;
    sh:name "download sd url" ;
    sh:description "Represents the standard-definition download URL for the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/durationInMs> ;
    sh:name "duration in ms" ;
    sh:description "Represents the duration of the audio asset in milliseconds." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/freeformGenre> ;
    sh:name "freeform genre" ;
    sh:description "Represents the free-form genre of the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/grid> ;
    sh:name "grid" ;
    sh:description "Represents the grid associated with the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/id> ;
    sh:name "id" ;
    sh:description "Identifies the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/isTest> ;
    sh:name "is test" ;
    sh:description "Indicates whether the audio asset is a test asset." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/originalReleaseDate> ;
    sh:name "original release date" ;
    sh:description "Represents the original release date of the audio asset." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/owner> ;
    sh:name "owner" ;
    sh:description "Represents the page that owns the audio asset." ;
    sh:class meta:Page ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/parentalWarningType> ;
    sh:name "parental warning type" ;
    sh:description "Represents the parental warning type for the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/subtitle> ;
    sh:name "subtitle" ;
    sh:description "Represents the subtitle of the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/title> ;
    sh:name "title" ;
    sh:description "Represents the title of the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/titleWithFeaturedArtists> ;
    sh:name "title with featured artists" ;
    sh:description "Represents the audio asset title together with its featured artists." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AudioAsset/upc> ;
    sh:name "upc" ;
    sh:description "Represents the universal product code of the audio asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Copyright
meta:VideoCopyrightShape a sh:NodeShape ;
  sh:targetClass meta:VideoCopyright ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/contentCategory> ;
    sh:name "content category" ;
    sh:description "Represents the content category of the copyrighted video content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/contentProtectProtectionDisabledReason> ;
    sh:name "content protect protection disabled reason" ;
    sh:description "Represents the reason content protection was disabled for the video copyright." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/copyrightContentId> ;
    sh:name "copyright content id" ;
    sh:description "Represents the identifier of the copyrighted content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/creator> ;
    sh:name "creator" ;
    sh:description "Represents the user who created the video copyright record." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/disableProtectionByContentProtectStatus> ;
    sh:name "disable protection by content protect status" ;
    sh:description "Indicates whether protection is disabled according to the content-protection status." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/excludedOwnershipSegments> ;
    sh:name "excluded ownership segments" ;
    sh:description "Represents the ownership segments excluded from the video copyright." ;
    sh:node meta:VideoCopyrightSegmentShape ;
    sh:class meta:VideoCopyrightSegment ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/id> ;
    sh:name "id" ;
    sh:description "Represents the video copyright identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/inConflict> ;
    sh:name "in conflict" ;
    sh:description "Indicates whether the video copyright is in conflict." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/monitoringStatus> ;
    sh:name "monitoring status" ;
    sh:description "Represents the monitoring status of the video copyright." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/monitoringType> ;
    sh:name "monitoring type" ;
    sh:description "Represents the monitoring type of the video copyright." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/ownershipCountries> ;
    sh:name "ownership countries" ;
    sh:description "Represents the geographic ownership settings for the video copyright." ;
    sh:node meta:VideoCopyrightGeoGateShape ;
    sh:class meta:VideoCopyrightGeoGate ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/referenceFile> ;
    sh:name "reference file" ;
    sh:description "Represents the reference file associated with the video copyright." ;
    sh:node meta:CopyrightReferenceContainerShape ;
    sh:class meta:CopyrightReferenceContainer ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/referenceFileDisabled> ;
    sh:name "reference file disabled" ;
    sh:description "Indicates whether the reference file is disabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/referenceFileDisabledByOps> ;
    sh:name "reference file disabled by ops" ;
    sh:description "Indicates whether the reference file was disabled by operations." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/referenceOwnerId> ;
    sh:name "reference owner id" ;
    sh:description "Represents the identifier of the reference owner." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/ruleIds> ;
    sh:name "rule ids" ;
    sh:description "Represents the copyright rules associated with the video copyright." ;
    sh:node meta:VideoCopyrightRuleShape ;
    sh:class meta:VideoCopyrightRule ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/tags> ;
    sh:name "tags" ;
    sh:description "Represents the tags associated with the video copyright." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyright/whitelistedIds> ;
    sh:name "whitelisted ids" ;
    sh:description "Represents the identifiers whitelisted for the video copyright." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Video Copyright Segment
meta:VideoCopyrightSegmentShape a sh:NodeShape ;
  sh:targetClass meta:VideoCopyrightSegment ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightSegment/durationInSec> ;
    sh:name "duration in sec" ;
    sh:description "Specifies the duration of the video copyright segment in seconds." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightSegment/mediaType> ;
    sh:name "media type" ;
    sh:description "Identifies the media type of the video copyright segment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightSegment/startTimeInSec> ;
    sh:name "start time in sec" ;
    sh:description "Specifies the segment's start time in seconds." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Copyright Geo Gate
meta:VideoCopyrightGeoGateShape a sh:NodeShape ;
  sh:targetClass meta:VideoCopyrightGeoGate ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightGeoGate/excludedCountries> ;
    sh:name "excluded countries" ;
    sh:description "Represents the countries excluded by the copyright geographic gate." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightGeoGate/includedCountries> ;
    sh:name "included countries" ;
    sh:description "Represents the countries included by the copyright geographic gate." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Copyright Reference Container
meta:CopyrightReferenceContainerShape a sh:NodeShape ;
  sh:targetClass meta:CopyrightReferenceContainer ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/contentType> ;
    sh:name "content type" ;
    sh:description "Identifies the content type of the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/copyrightCreationTime> ;
    sh:name "copyright creation time" ;
    sh:description "Represents when the copyright reference was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/downloadHdUrl> ;
    sh:name "download hd url" ;
    sh:description "Provides the URL associated with downloading the high-definition copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/durationInSec> ;
    sh:name "duration in sec" ;
    sh:description "Represents the duration of the copyright reference in seconds." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/id> ;
    sh:name "id" ;
    sh:description "Identifies the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/iswc> ;
    sh:name "iswc" ;
    sh:description "Represents the ISWC associated with the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/metadata> ;
    sh:name "metadata" ;
    sh:description "Contains metadata associated with the copyright reference." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/playableVideoUri> ;
    sh:name "playable video uri" ;
    sh:description "Provides the URI for playing the video associated with the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/publishedTime> ;
    sh:name "published time" ;
    sh:description "Represents when the copyright reference was published." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/thumbnailUrl> ;
    sh:name "thumbnail url" ;
    sh:description "Provides the URL for the thumbnail associated with the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/title> ;
    sh:name "title" ;
    sh:description "Represents the title of the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/universalContentId> ;
    sh:name "universal content id" ;
    sh:description "Identifies the universal content associated with the copyright reference." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CopyrightReferenceContainer/writerNames> ;
    sh:name "writer names" ;
    sh:description "Lists the names of writers associated with the copyright reference." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Video Copyright Rule
meta:VideoCopyrightRuleShape a sh:NodeShape ;
  sh:targetClass meta:VideoCopyrightRule ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/conditionGroups> ;
    sh:name "condition groups" ;
    sh:description "Represents the condition groups in the copyright rule." ;
    sh:node meta:VideoCopyrightConditionGroupShape ;
    sh:class meta:VideoCopyrightConditionGroup ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/copyrights> ;
    sh:name "copyrights" ;
    sh:description "Represents the copyrights associated with the copyright rule." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/createdDate> ;
    sh:name "created date" ;
    sh:description "Represents the date when the copyright rule was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/creator> ;
    sh:name "creator" ;
    sh:description "Represents the user who created the copyright rule." ;
    sh:node meta:UserShape ;
    sh:class meta:User ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/id> ;
    sh:name "id" ;
    sh:description "Represents the copyright rule identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/isInMigration> ;
    sh:name "is in migration" ;
    sh:description "Indicates whether the copyright rule is in migration." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/name> ;
    sh:name "name" ;
    sh:description "Identifies the video copyright rule by name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightRule/validityStatus> ;
    sh:name "validity status" ;
    sh:description "Indicates the validity status of the video copyright rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Copyright Condition Group
meta:VideoCopyrightConditionGroupShape a sh:NodeShape ;
  sh:targetClass meta:VideoCopyrightConditionGroup ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightConditionGroup/action> ;
    sh:name "action" ;
    sh:description "Represents the action associated with the copyright condition group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightConditionGroup/conditions> ;
    sh:name "conditions" ;
    sh:description "Represents the conditions in the copyright condition group." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightConditionGroup/validityStatus> ;
    sh:name "validity status" ;
    sh:description "Represents the validity status of the copyright condition group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Event
meta:EventShape a sh:NodeShape ;
  sh:targetClass meta:Event ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/attendingCount> ;
    sh:name "attending count" ;
    sh:description "Represents the number of people attending the event." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/canGuestsInvite> ;
    sh:name "can guests invite" ;
    sh:description "Indicates whether guests can invite people to the event." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/category> ;
    sh:name "category" ;
    sh:description "Represents the category assigned to the event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "CLASSIC_LITERATURE" "COMEDY" "CRAFTS" "DANCE" "DRINKS" "FITNESS_AND_WORKOUTS" "FOODS" "GAMES" "GARDENING" "HEALTHY_LIVING_AND_SELF_CARE" "HEALTH_AND_MEDICAL" "HOME_AND_GARDEN" "MUSIC_AND_AUDIO" "PARTIES" "PROFESSIONAL_NETWORKING" "RELIGIONS" "SHOPPING_EVENT" "SOCIAL_ISSUES" "SPORTS" "THEATER" "TV_AND_MOVIES" "VISUAL_ARTS" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/cover> ;
    sh:name "cover" ;
    sh:description "Provides the cover photo associated with the event." ;
    sh:node meta:CoverPhotoShape ;
    sh:class meta:CoverPhoto ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents when the event was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/declinedCount> ;
    sh:name "declined count" ;
    sh:description "Represents the number of people who declined the event." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/description> ;
    sh:name "description" ;
    sh:description "Represents the description of the event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/discountCodeEnabled> ;
    sh:name "discount code enabled" ;
    sh:description "Indicates whether discount codes are enabled for the event." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/endTime> ;
    sh:name "end time" ;
    sh:description "Represents when the event ends." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/eventTimes> ;
    sh:name "event times" ;
    sh:description "Contains the event's child event times." ;
    sh:node meta:ChildEventShape ;
    sh:class meta:ChildEvent ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/guestListEnabled> ;
    sh:name "guest list enabled" ;
    sh:description "Indicates whether the event's guest list is enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/id> ;
    sh:name "id" ;
    sh:description "Identifies the event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/interestedCount> ;
    sh:name "interested count" ;
    sh:description "Represents the number of people interested in the event." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/isCanceled> ;
    sh:name "is canceled" ;
    sh:description "Indicates whether the event is canceled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/isDraft> ;
    sh:name "is draft" ;
    sh:description "Indicates whether the event is a draft." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/isOnline> ;
    sh:name "is online" ;
    sh:description "Indicates whether the event is online." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/isPageOwned> ;
    sh:name "is page owned" ;
    sh:description "Indicates whether the event is owned by a page." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/maybeCount> ;
    sh:name "maybe count" ;
    sh:description "Represents the number of people marked as maybe for the event." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/name> ;
    sh:name "name" ;
    sh:description "Represents the event's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/noreplyCount> ;
    sh:name "noreply count" ;
    sh:description "Represents the number of people who have not replied to the event." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/onlineEventFormat> ;
    sh:name "online event format" ;
    sh:description "Represents the event's online format, including options such as Facebook Live, Horizon, Messenger Room, a third-party format, or no online format." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "fb_live" "horizon_event" "messenger_room" "none" "other" "third_party" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/onlineEventThirdPartyUrl> ;
    sh:name "online event third party url" ;
    sh:description "Provides the URL for the event's third-party online format." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/owner> ;
    sh:name "owner" ;
    sh:description "Identifies the object that owns the event." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/parentGroup> ;
    sh:name "parent group" ;
    sh:description "Identifies the group associated with the event." ;
    sh:node meta:GroupShape ;
    sh:class meta:Group ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/place> ;
    sh:name "place" ;
    sh:description "Represents the place associated with the event." ;
    sh:node meta:PlaceShape ;
    sh:class meta:Place ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/registrationSetting> ;
    sh:name "registration setting" ;
    sh:description "Contains the event's registration settings." ;
    sh:node meta:EventRegistrationSettingShape ;
    sh:class meta:EventRegistrationSetting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/scheduledPublishTime> ;
    sh:name "scheduled publish time" ;
    sh:description "Represents the scheduled time for publishing the event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/startTime> ;
    sh:name "start time" ;
    sh:description "Represents when the event starts." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/ticketSetting> ;
    sh:name "ticket setting" ;
    sh:description "Contains the event's ticket settings." ;
    sh:node meta:EventTicketSettingShape ;
    sh:class meta:EventTicketSetting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/ticketUri> ;
    sh:name "ticket uri" ;
    sh:description "Provides the event's ticket URL." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/ticketUriStartSalesTime> ;
    sh:name "ticket uri start sales time" ;
    sh:description "Represents when ticket sales begin at the event's ticket URL." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/ticketingPrivacyUri> ;
    sh:name "ticketing privacy uri" ;
    sh:description "Provides the URL for the event's ticketing privacy information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/ticketingTermsUri> ;
    sh:name "ticketing terms uri" ;
    sh:description "Provides the URL for the event's ticketing terms." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/timezone> ;
    sh:name "timezone" ;
    sh:description "Represents the event's time zone." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/type> ;
    sh:name "type" ;
    sh:description "Represents the event's type, such as community, friends, group, private, public, or work-related." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "community" "friends" "group" "messenger_community" "private" "public" "work_company" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Event/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Represents when the event was last updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] .

# Shape for Child Event
meta:ChildEventShape a sh:NodeShape ;
  sh:targetClass meta:ChildEvent ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ChildEvent/endTime> ;
    sh:name "end time" ;
    sh:description "The end time of the child event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ChildEvent/id> ;
    sh:name "id" ;
    sh:description "The identifier of the child event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ChildEvent/startTime> ;
    sh:name "start time" ;
    sh:description "The start time of the child event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ChildEvent/ticketUri> ;
    sh:name "ticket uri" ;
    sh:description "The URI for tickets to the child event." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Place
meta:PlaceShape a sh:NodeShape ;
  sh:targetClass meta:Place ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Place/id> ;
    sh:name "id" ;
    sh:description "Represents the identifier of the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Place/location> ;
    sh:name "location" ;
    sh:description "Represents the location of the place." ;
    sh:node meta:LocationShape ;
    sh:class meta:Location ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Place/name> ;
    sh:name "name" ;
    sh:description "Represents the name of the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Place/overallRating> ;
    sh:name "overall rating" ;
    sh:description "Represents the place's overall rating." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] .

# Shape for Event Registration Setting
meta:EventRegistrationSettingShape a sh:NodeShape ;
  sh:targetClass meta:EventRegistrationSetting ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EventRegistrationSetting/id> ;
    sh:name "id" ;
    sh:description "Identifies the event registration setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EventRegistrationSetting/questions> ;
    sh:name "questions" ;
    sh:description "Represents the questions associated with event registration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EventRegistrationSetting/targetType> ;
    sh:name "target type" ;
    sh:description "Represents the target type for the registration setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EventRegistrationSetting/ticketTierIds> ;
    sh:name "ticket tier ids" ;
    sh:description "Identifies the ticket tiers associated with the registration setting." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Event Ticket Setting
meta:EventTicketSettingShape a sh:NodeShape ;
  sh:targetClass meta:EventTicketSetting ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EventTicketSetting/id> ;
    sh:name "id" ;
    sh:description "Identifies the event ticket setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.EventTicketSetting/ticketDeliveryType> ;
    sh:name "ticket delivery type" ;
    sh:description "Represents how tickets are delivered." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Music Video Copyright
meta:MusicVideoCopyrightShape a sh:NodeShape ;
  sh:targetClass meta:MusicVideoCopyright ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/creationTime> ;
    sh:name "creation time" ;
    sh:description "Represents when the music video copyright record was created." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/displayedMatchesCount> ;
    sh:name "displayed matches count" ;
    sh:description "Represents the number of copyright matches displayed for the music video." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/id> ;
    sh:name "id" ;
    sh:description "Identifies the music video copyright record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/inConflict> ;
    sh:name "in conflict" ;
    sh:description "Indicates whether the music video copyright record is in conflict." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/isrc> ;
    sh:name "isrc" ;
    sh:description "Represents the ISRC associated with the music video copyright record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/matchRule> ;
    sh:name "match rule" ;
    sh:description "Contains the video copyright rule associated with the music video copyright record." ;
    sh:node meta:VideoCopyrightRuleShape ;
    sh:class meta:VideoCopyrightRule ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/ownershipCountries> ;
    sh:name "ownership countries" ;
    sh:description "Contains the countries associated with ownership of the music video copyright." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/referenceFileStatus> ;
    sh:name "reference file status" ;
    sh:description "Represents the status of the copyright reference file." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/ridgeMonitoringStatus> ;
    sh:name "ridge monitoring status" ;
    sh:description "Represents the ridge monitoring status of the music video copyright record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/tags> ;
    sh:name "tags" ;
    sh:description "Contains tags associated with the music video copyright record." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/updateTime> ;
    sh:name "update time" ;
    sh:description "Represents when the music video copyright record was updated." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/videoAsset> ;
    sh:name "video asset" ;
    sh:description "Contains the video asset associated with the music video copyright record." ;
    sh:node meta:CopyrightReferenceContainerShape ;
    sh:class meta:CopyrightReferenceContainer ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/whitelistedFbUsers> ;
    sh:name "whitelisted fb users" ;
    sh:description "Contains Facebook users associated with the whitelist for the music video copyright record." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MusicVideoCopyright/whitelistedIgUsers> ;
    sh:name "whitelisted ig users" ;
    sh:description "Contains Instagram users associated with the whitelist for the music video copyright record." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Privacy
meta:PrivacyShape a sh:NodeShape ;
  sh:targetClass meta:Privacy ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Privacy/allow> ;
    sh:name "allow" ;
    sh:description "Represents what the Privacy model allows." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Privacy/deny> ;
    sh:name "deny" ;
    sh:description "Represents what the Privacy model denies." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Privacy/description> ;
    sh:name "description" ;
    sh:description "A description of the privacy setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Privacy/friends> ;
    sh:name "friends" ;
    sh:description "The privacy setting related to friends." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Privacy/networks> ;
    sh:name "networks" ;
    sh:description "The privacy setting related to networks." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Privacy/value> ;
    sh:name "value" ;
    sh:description "The value of the privacy setting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Status
meta:VideoStatusShape a sh:NodeShape ;
  sh:targetClass meta:VideoStatus ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatus/copyrightCheckStatus> ;
    sh:name "copyright check status" ;
    sh:description "Indicates the status of the video's copyright check." ;
    sh:node meta:VideoCopyrightCheckStatusShape ;
    sh:class meta:VideoCopyrightCheckStatus ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatus/processingPhase> ;
    sh:name "processing phase" ;
    sh:description "Provides the video's processing-phase status information." ;
    sh:node meta:VideoStatusProcessingPhaseShape ;
    sh:class meta:VideoStatusProcessingPhase ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatus/processingProgress> ;
    sh:name "processing progress" ;
    sh:description "Indicates the video's processing progress." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatus/publishingPhase> ;
    sh:name "publishing phase" ;
    sh:description "Provides the video's publishing-phase status information." ;
    sh:node meta:VideoStatusPublishingPhaseShape ;
    sh:class meta:VideoStatusPublishingPhase ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatus/uploadingPhase> ;
    sh:name "uploading phase" ;
    sh:description "Provides the video's uploading-phase status information." ;
    sh:node meta:VideoStatusUploadingPhaseShape ;
    sh:class meta:VideoStatusUploadingPhase ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatus/videoStatus> ;
    sh:name "video status" ;
    sh:description "Indicates the video's status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Copyright Check Status
meta:VideoCopyrightCheckStatusShape a sh:NodeShape ;
  sh:targetClass meta:VideoCopyrightCheckStatus ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightCheckStatus/matchesFound> ;
    sh:name "matches found" ;
    sh:description "Indicates whether matches were found during the copyright check." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoCopyrightCheckStatus/status> ;
    sh:name "status" ;
    sh:description "Represents the status of the copyright check." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Status Processing Phase
meta:VideoStatusProcessingPhaseShape a sh:NodeShape ;
  sh:targetClass meta:VideoStatusProcessingPhase ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusProcessingPhase/errors> ;
    sh:name "errors" ;
    sh:description "Lists errors associated with the video's processing phase." ;
    sh:node meta:VideoStatusErrorShape ;
    sh:class meta:VideoStatusError ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusProcessingPhase/status> ;
    sh:name "status" ;
    sh:description "Indicates the status of the video's processing phase." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Status Error
meta:VideoStatusErrorShape a sh:NodeShape ;
  sh:targetClass meta:VideoStatusError ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusError/code> ;
    sh:name "code" ;
    sh:description "Identifies the code associated with a video status error." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusError/message> ;
    sh:name "message" ;
    sh:description "Provides the message associated with a video status error." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Status Publishing Phase
meta:VideoStatusPublishingPhaseShape a sh:NodeShape ;
  sh:targetClass meta:VideoStatusPublishingPhase ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusPublishingPhase/errors> ;
    sh:name "errors" ;
    sh:description "Lists errors associated with the video's publishing phase." ;
    sh:node meta:VideoStatusErrorShape ;
    sh:class meta:VideoStatusError ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusPublishingPhase/publishStatus> ;
    sh:name "publish status" ;
    sh:description "Indicates the video's publishing status." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusPublishingPhase/publishTime> ;
    sh:name "publish time" ;
    sh:description "Indicates the video's publish time." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusPublishingPhase/status> ;
    sh:name "status" ;
    sh:description "Indicates the status of the video's publishing phase." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Video Status Uploading Phase
meta:VideoStatusUploadingPhaseShape a sh:NodeShape ;
  sh:targetClass meta:VideoStatusUploadingPhase ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusUploadingPhase/bytesTransferred> ;
    sh:name "bytes transferred" ;
    sh:description "Indicates the amount of data transferred during the video's upload." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusUploadingPhase/errors> ;
    sh:name "errors" ;
    sh:description "Lists errors associated with the video's uploading phase." ;
    sh:node meta:VideoStatusErrorShape ;
    sh:class meta:VideoStatusError ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusUploadingPhase/sourceFileSize> ;
    sh:name "source file size" ;
    sh:description "Indicates the size of the video's source file." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VideoStatusUploadingPhase/status> ;
    sh:name "status" ;
    sh:description "Indicates the status of the video's uploading phase." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Has Lead Access
meta:HasLeadAccessShape a sh:NodeShape ;
  sh:targetClass meta:HasLeadAccess ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/appHasLeadsPermission> ;
    sh:name "app has leads permission" ;
    sh:description "Indicates whether the app has leads permission." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/canAccessLead> ;
    sh:name "can access lead" ;
    sh:description "Indicates whether lead access is available." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/enabledLeadAccessManager> ;
    sh:name "enabled lead access manager" ;
    sh:description "Indicates whether the lead access manager is enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/failureReason> ;
    sh:name "failure reason" ;
    sh:description "Represents the reason for a lead-access failure." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/failureResolution> ;
    sh:name "failure resolution" ;
    sh:description "Represents the resolution for a lead-access failure." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/isPageAdmin> ;
    sh:name "is page admin" ;
    sh:description "Indicates whether the user is a page administrator." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/pageId> ;
    sh:name "page id" ;
    sh:description "Represents the page identifier used for lead access." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/userHasLeadsPermission> ;
    sh:name "user has leads permission" ;
    sh:description "Indicates whether the user has leads permission." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.HasLeadAccess/userId> ;
    sh:name "user id" ;
    sh:description "Represents the user identifier used for lead access." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Messaging Feature Status
meta:MessagingFeatureStatusShape a sh:NodeShape ;
  sh:targetClass meta:MessagingFeatureStatus ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MessagingFeatureStatus/hopV2> ;
    sh:name "hop v2" ;
    sh:description "Indicates the status of the HOP v2 messaging feature." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MessagingFeatureStatus/igMultiApp> ;
    sh:name "ig multi app" ;
    sh:description "Indicates the status of the Instagram multi-app messaging feature." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MessagingFeatureStatus/msgrMultiApp> ;
    sh:name "msgr multi app" ;
    sh:description "Indicates the status of the Messenger multi-app messaging feature." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for Page Parking
meta:PageParkingShape a sh:NodeShape ;
  sh:targetClass meta:PageParking ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageParking/lot> ;
    sh:name "lot" ;
    sh:description "Represents the Page's parking-lot parking information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageParking/street> ;
    sh:name "street" ;
    sh:description "Represents the Page's street-parking information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageParking/valet> ;
    sh:name "valet" ;
    sh:description "Represents the Page's valet-parking information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Page Payment Options
meta:PagePaymentOptionsShape a sh:NodeShape ;
  sh:targetClass meta:PagePaymentOptions ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PagePaymentOptions/amex> ;
    sh:name "amex" ;
    sh:description "Represents the Page's American Express payment option." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PagePaymentOptions/cashOnly> ;
    sh:name "cash only" ;
    sh:description "Represents the Page's cash-only payment option." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PagePaymentOptions/discover> ;
    sh:name "discover" ;
    sh:description "Represents the Page's Discover payment option." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PagePaymentOptions/mastercard> ;
    sh:name "mastercard" ;
    sh:description "Represents the Page's Mastercard payment option." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PagePaymentOptions/visa> ;
    sh:name "visa" ;
    sh:description "Represents the Page's Visa payment option." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Page Restaurant Services
meta:PageRestaurantServicesShape a sh:NodeShape ;
  sh:targetClass meta:PageRestaurantServices ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/catering> ;
    sh:name "catering" ;
    sh:description "Indicates whether the restaurant provides catering." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/delivery> ;
    sh:name "delivery" ;
    sh:description "Indicates whether the restaurant provides delivery." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/groups> ;
    sh:name "groups" ;
    sh:description "Indicates whether the restaurant accommodates groups." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/kids> ;
    sh:name "kids" ;
    sh:description "Indicates whether the restaurant provides services for kids." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/outdoor> ;
    sh:name "outdoor" ;
    sh:description "Indicates whether the restaurant provides outdoor service." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/pickup> ;
    sh:name "pickup" ;
    sh:description "Indicates whether the restaurant provides pickup." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/reserve> ;
    sh:name "reserve" ;
    sh:description "Indicates whether the restaurant accepts reservations." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/takeout> ;
    sh:name "takeout" ;
    sh:description "Indicates whether the restaurant provides takeout." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/waiter> ;
    sh:name "waiter" ;
    sh:description "Indicates whether the restaurant provides waiter service." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantServices/walkins> ;
    sh:name "walkins" ;
    sh:description "Indicates whether the restaurant accepts walk-ins." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for Page Restaurant Specialties
meta:PageRestaurantSpecialtiesShape a sh:NodeShape ;
  sh:targetClass meta:PageRestaurantSpecialties ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantSpecialties/breakfast> ;
    sh:name "breakfast" ;
    sh:description "Represents the restaurant's breakfast specialty information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantSpecialties/coffee> ;
    sh:name "coffee" ;
    sh:description "Represents the restaurant's coffee specialty information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantSpecialties/dinner> ;
    sh:name "dinner" ;
    sh:description "Represents the restaurant's dinner specialty information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantSpecialties/drinks> ;
    sh:name "drinks" ;
    sh:description "Represents the restaurant's drinks specialty information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageRestaurantSpecialties/lunch> ;
    sh:name "lunch" ;
    sh:description "Represents the restaurant's lunch specialty information." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] .

# Shape for Page Start Info
meta:PageStartInfoShape a sh:NodeShape ;
  sh:targetClass meta:PageStartInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageStartInfo/date> ;
    sh:name "date" ;
    sh:description "Represents the date associated with the Page's start information." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.PageStartInfo/type> ;
    sh:name "type" ;
    sh:description "Represents the type of the Page's start information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Voip Info
meta:VoipInfoShape a sh:NodeShape ;
  sh:targetClass meta:VoipInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/hasMobileApp> ;
    sh:name "has mobile app" ;
    sh:description "Indicates whether the VoIP participant has a mobile app." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/hasPermission> ;
    sh:name "has permission" ;
    sh:description "Indicates whether the VoIP participant has permission." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/isCallable> ;
    sh:name "is callable" ;
    sh:description "Indicates whether the VoIP participant is callable." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/isCallableWebrtc> ;
    sh:name "is callable webrtc" ;
    sh:description "Indicates whether the VoIP participant is callable using WebRTC." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/isPushable> ;
    sh:name "is pushable" ;
    sh:description "Indicates whether the VoIP participant is pushable." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/reasonCode> ;
    sh:name "reason code" ;
    sh:description "Identifies the code for the VoIP information's reason." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.VoipInfo/reasonDescription> ;
    sh:name "reason description" ;
    sh:description "Describes the reason associated with the VoIP information." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Product Catalog Image Settings
meta:ProductCatalogImageSettingsShape a sh:NodeShape ;
  sh:targetClass meta:ProductCatalogImageSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalogImageSettings/carouselAd> ;
    sh:name "carousel ad" ;
    sh:description "Image transformation settings for carousel ads." ;
    sh:node meta:ProductCatalogImageSettingsOperationShape ;
    sh:class meta:ProductCatalogImageSettingsOperation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalogImageSettings/singleAd> ;
    sh:name "single ad" ;
    sh:description "Image transformation settings for single ads." ;
    sh:node meta:ProductCatalogImageSettingsOperationShape ;
    sh:class meta:ProductCatalogImageSettingsOperation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Product Catalog Image Settings Operation
meta:ProductCatalogImageSettingsOperationShape a sh:NodeShape ;
  sh:targetClass meta:ProductCatalogImageSettingsOperation ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ProductCatalogImageSettingsOperation/transformationType> ;
    sh:name "transformation type" ;
    sh:description "The type of image transformation used by the operation." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Managed Partner Extended Credit
meta:ManagedPartnerExtendedCreditShape a sh:NodeShape ;
  sh:targetClass meta:ManagedPartnerExtendedCredit ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerExtendedCredit/id> ;
    sh:name "id" ;
    sh:description "Identifies the managed partner extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerExtendedCredit/maxBalance> ;
    sh:name "max balance" ;
    sh:description "Represents the maximum balance associated with the managed partner extended credit." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ManagedPartnerExtendedCredit/receivingCreditAllocationConfig> ;
    sh:name "receiving credit allocation config" ;
    sh:description "Contains the configuration for receiving credit allocations." ;
    sh:node meta:ExtendedCreditAllocationConfigShape ;
    sh:class meta:ExtendedCreditAllocationConfig ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Currency Amount
meta:CurrencyAmountShape a sh:NodeShape ;
  sh:targetClass meta:CurrencyAmount ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CurrencyAmount/amount> ;
    sh:name "amount" ;
    sh:description "Represents the amount in the currency amount model." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CurrencyAmount/amountInHundredths> ;
    sh:name "amount in hundredths" ;
    sh:description "Represents the amount expressed in hundredths in the currency amount model." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CurrencyAmount/currency> ;
    sh:name "currency" ;
    sh:description "Identifies the currency of the currency amount." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CurrencyAmount/offsettedAmount> ;
    sh:name "offsetted amount" ;
    sh:description "Represents the offsetted amount in the currency amount model." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Extended Credit Allocation Config
meta:ExtendedCreditAllocationConfigShape a sh:NodeShape ;
  sh:targetClass meta:ExtendedCreditAllocationConfig ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/currencyAmount> ;
    sh:name "currency amount" ;
    sh:description "Represents the currency amount in the credit allocation configuration." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/id> ;
    sh:name "id" ;
    sh:description "Identifies the credit allocation configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/liabilityType> ;
    sh:name "liability type" ;
    sh:description "Represents the type of liability in the credit allocation configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/owningBusiness> ;
    sh:name "owning business" ;
    sh:description "Identifies the business that owns the credit allocation configuration." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/owningCredential> ;
    sh:name "owning credential" ;
    sh:description "Identifies the extended credit credential that owns the allocation configuration." ;
    sh:node meta:ExtendedCreditShape ;
    sh:class meta:ExtendedCredit ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/partitionType> ;
    sh:name "partition type" ;
    sh:description "Represents the type of partition used by the credit allocation configuration." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/receivingBusiness> ;
    sh:name "receiving business" ;
    sh:description "Identifies the business receiving the credit allocation." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/receivingCredential> ;
    sh:name "receiving credential" ;
    sh:description "Identifies the extended credit credential receiving the allocation." ;
    sh:node meta:ExtendedCreditShape ;
    sh:class meta:ExtendedCredit ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/requestStatus> ;
    sh:name "request status" ;
    sh:description "Represents the status of the credit allocation request." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditAllocationConfig/sendBillTo> ;
    sh:name "send bill to" ;
    sh:description "Represents where the bill is sent." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Extended Credit
meta:ExtendedCreditShape a sh:NodeShape ;
  sh:targetClass meta:ExtendedCredit ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/allocatedAmount> ;
    sh:name "allocated amount" ;
    sh:description "Represents the amount allocated to the extended credit." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/balance> ;
    sh:name "balance" ;
    sh:description "Represents the extended credit's balance." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/creditAvailable> ;
    sh:name "credit available" ;
    sh:description "Represents the amount of credit available." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/creditType> ;
    sh:name "credit type" ;
    sh:description "Represents the type of extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/id> ;
    sh:name "id" ;
    sh:description "Identifies the extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/isAccessRevoked> ;
    sh:name "is access revoked" ;
    sh:description "Indicates whether access to the extended credit is revoked." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/isAutomatedExperience> ;
    sh:name "is automated experience" ;
    sh:description "Indicates whether the extended credit is associated with an automated experience." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/legalEntityName> ;
    sh:name "legal entity name" ;
    sh:description "Represents the name of the legal entity associated with the extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/liableAddress> ;
    sh:name "liable address" ;
    sh:description "Represents the address of the party liable for the extended credit." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/liableBizName> ;
    sh:name "liable biz name" ;
    sh:description "Represents the business name of the party liable for the extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/maxBalance> ;
    sh:name "max balance" ;
    sh:description "Represents the maximum balance of the extended credit." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/onlineMaxBalance> ;
    sh:name "online max balance" ;
    sh:description "Represents the maximum online balance of the extended credit." ;
    sh:node meta:CurrencyAmountShape ;
    sh:class meta:CurrencyAmount ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/ownerBusiness> ;
    sh:name "owner business" ;
    sh:description "Identifies the business that owns the extended credit." ;
    sh:class meta:Business ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/ownerBusinessName> ;
    sh:name "owner business name" ;
    sh:description "Represents the name of the business that owns the extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/partitionFrom> ;
    sh:name "partition from" ;
    sh:description "Represents the source from which the extended credit is partitioned." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/receivingCreditAllocationConfig> ;
    sh:name "receiving credit allocation config" ;
    sh:description "Contains the credit allocation configuration for receiving credit." ;
    sh:class meta:ExtendedCreditAllocationConfig ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/sendBillToAddress> ;
    sh:name "send bill to address" ;
    sh:description "Represents the address to which the bill is sent." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/sendBillToBizName> ;
    sh:name "send bill to biz name" ;
    sh:description "Represents the business name to which the bill is sent." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCredit/soldToAddress> ;
    sh:name "sold to address" ;
    sh:description "Represents the address of the party to which the extended credit is sold." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for CRMAddress
meta:CRMAddressShape a sh:NodeShape ;
  sh:targetClass meta:CRMAddress ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/city> ;
    sh:name "city" ;
    sh:description "Represents the city in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/cnpjTaxId> ;
    sh:name "cnpj tax id" ;
    sh:description "Represents the CNPJ tax identifier in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/country> ;
    sh:name "country" ;
    sh:description "Represents the country in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/id> ;
    sh:name "id" ;
    sh:description "Identifies the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/postalCode> ;
    sh:name "postal code" ;
    sh:description "Represents the postal code in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/registrationLabel> ;
    sh:name "registration label" ;
    sh:description "Represents the label for the registration information in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/registrationNumber> ;
    sh:name "registration number" ;
    sh:description "Represents the registration number in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/state> ;
    sh:name "state" ;
    sh:description "Represents the state in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/street1> ;
    sh:name "street1" ;
    sh:description "Represents the first street address line in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/street2> ;
    sh:name "street2" ;
    sh:description "Represents the second street address line in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/street3> ;
    sh:name "street3" ;
    sh:description "Represents the third street address line in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/street4> ;
    sh:name "street4" ;
    sh:description "Represents the fourth street address line in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/validationStatus> ;
    sh:name "validation status" ;
    sh:description "Represents the validation status of the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CRMAddress/vatTaxId> ;
    sh:name "vat tax id" ;
    sh:description "Represents the VAT tax identifier in the CRM address." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Business Managed Partner Eligibility
meta:BusinessManagedPartnerEligibilityShape a sh:NodeShape ;
  sh:targetClass meta:BusinessManagedPartnerEligibility ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BusinessManagedPartnerEligibility/isEligible> ;
    sh:name "is eligible" ;
    sh:description "Whether the business is eligible for managed partnership." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BusinessManagedPartnerEligibility/reasonCode> ;
    sh:name "reason code" ;
    sh:description "The code for the reason associated with the managed-partner eligibility result." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BusinessManagedPartnerEligibility/reasonDescription> ;
    sh:name "reason description" ;
    sh:description "The description of the reason associated with the managed-partner eligibility result." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Business Partner Premium Options
meta:BusinessPartnerPremiumOptionsShape a sh:NodeShape ;
  sh:targetClass meta:BusinessPartnerPremiumOptions ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BusinessPartnerPremiumOptions/enableBasketInsight> ;
    sh:name "enable basket insight" ;
    sh:description "Whether basket insight is enabled for the business partner." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BusinessPartnerPremiumOptions/enableExtendedAudienceRetargeting> ;
    sh:name "enable extended audience retargeting" ;
    sh:description "Whether extended audience retargeting is enabled for the business partner." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.BusinessPartnerPremiumOptions/retailerCustomAudienceConfig> ;
    sh:name "retailer custom audience config" ;
    sh:description "The retailer's custom audience configuration." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Marketing Messages Onboarding Status
meta:MarketingMessagesOnboardingStatusShape a sh:NodeShape ;
  sh:targetClass meta:MarketingMessagesOnboardingStatus ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MarketingMessagesOnboardingStatus/status> ;
    sh:name "status" ;
    sh:description "Represents the status of marketing messages onboarding." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.MarketingMessagesOnboardingStatus/time> ;
    sh:name "time" ;
    sh:description "Represents the time associated with the marketing messages onboarding status." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] .

# Shape for Custom Audience Group
meta:CustomAudienceGroupShape a sh:NodeShape ;
  sh:targetClass meta:CustomAudienceGroup ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CustomAudienceGroup/audienceTypeParamName> ;
    sh:name "audience type param name" ;
    sh:description "Represents the parameter name for the audience type in the custom audience group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CustomAudienceGroup/existingCustomerTag> ;
    sh:name "existing customer tag" ;
    sh:description "Represents the tag for existing customers in the custom audience group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.CustomAudienceGroup/newCustomerTag> ;
    sh:name "new customer tag" ;
    sh:description "Represents the tag for new customers in the custom audience group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Funding Source Details
meta:FundingSourceDetailsShape a sh:NodeShape ;
  sh:targetClass meta:FundingSourceDetails ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetails/coupon> ;
    sh:name "coupon" ;
    sh:description "Represents a coupon associated with the funding source." ;
    sh:node meta:FundingSourceDetailsCouponShape ;
    sh:class meta:FundingSourceDetailsCoupon ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetails/coupons> ;
    sh:name "coupons" ;
    sh:description "Represents the coupons associated with the funding source." ;
    sh:node meta:FundingSourceDetailsCouponShape ;
    sh:class meta:FundingSourceDetailsCoupon ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetails/displayString> ;
    sh:name "display string" ;
    sh:description "Represents the display text for the funding source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetails/id> ;
    sh:name "id" ;
    sh:description "Represents the identifier of the funding source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetails/type> ;
    sh:name "type" ;
    sh:description "Represents the type designation of the funding source." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Funding Source Details Coupon
meta:FundingSourceDetailsCouponShape a sh:NodeShape ;
  sh:targetClass meta:FundingSourceDetailsCoupon ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/amount> ;
    sh:name "amount" ;
    sh:description "Represents the coupon amount." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/campaignIds> ;
    sh:name "campaign ids" ;
    sh:description "Represents the campaign identifiers associated with the coupon." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/childAdAccountId> ;
    sh:name "child ad account id" ;
    sh:description "Represents the child ad account identifier associated with the coupon." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/childBmId> ;
    sh:name "child bm id" ;
    sh:description "Represents the child business manager identifier associated with the coupon." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/couponId> ;
    sh:name "coupon id" ;
    sh:description "Represents the coupon identifier." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/couponTiering> ;
    sh:name "coupon tiering" ;
    sh:description "Represents coupon tiering information." ;
    sh:node meta:FundingSourceDetailsCouponTieringShape ;
    sh:class meta:FundingSourceDetailsCouponTiering ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/currency> ;
    sh:name "currency" ;
    sh:description "Represents the currency associated with the coupon." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/displayAmount> ;
    sh:name "display amount" ;
    sh:description "Represents the coupon amount in display form." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/expiration> ;
    sh:name "expiration" ;
    sh:description "Represents the coupon expiration date and time." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/originalAmount> ;
    sh:name "original amount" ;
    sh:description "Represents the coupon's original amount." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/originalDisplayAmount> ;
    sh:name "original display amount" ;
    sh:description "Represents the coupon's original amount in display form." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/startDate> ;
    sh:name "start date" ;
    sh:description "Represents the coupon start date and time." ;
    sh:datatype xsd:dateTime ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCoupon/vendorId> ;
    sh:name "vendor id" ;
    sh:description "Represents the identifier of the coupon vendor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Funding Source Details Coupon Tiering
meta:FundingSourceDetailsCouponTieringShape a sh:NodeShape ;
  sh:targetClass meta:FundingSourceDetailsCouponTiering ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCouponTiering/couponTieringNew> ;
    sh:name "coupon tiering new" ;
    sh:description "Represents an unspecified object for new-coupon tiering." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.FundingSourceDetailsCouponTiering/couponTieringReactivation> ;
    sh:name "coupon tiering reactivation" ;
    sh:description "Represents an unspecified object for coupon-reactivation tiering." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Extended Credit Invoice Group
meta:ExtendedCreditInvoiceGroupShape a sh:NodeShape ;
  sh:targetClass meta:ExtendedCreditInvoiceGroup ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/autoEnroll> ;
    sh:name "auto enroll" ;
    sh:description "Indicates whether automatic enrollment is enabled for the invoice group." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/billToAddress> ;
    sh:name "bill to address" ;
    sh:description "Represents the address to be billed for the invoice group." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/customerPoNumber> ;
    sh:name "customer po number" ;
    sh:description "Represents the customer's purchase order number for the invoice group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/email> ;
    sh:name "email" ;
    sh:description "Contains an email associated with the invoice group." ;
    sh:node meta:ExtendedCreditEmailShape ;
    sh:class meta:ExtendedCreditEmail ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/emails> ;
    sh:name "emails" ;
    sh:description "Contains the email addresses associated with the invoice group." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/id> ;
    sh:name "id" ;
    sh:description "Identifies the invoice group." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/liableAddress> ;
    sh:name "liable address" ;
    sh:description "Represents the address of the party liable for the invoice group." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/name> ;
    sh:name "name" ;
    sh:description "Represents the invoice group's name." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditInvoiceGroup/soldToAddress> ;
    sh:name "sold to address" ;
    sh:description "Represents the address of the party to which the invoice group is sold." ;
    sh:node meta:CRMAddressShape ;
    sh:class meta:CRMAddress ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Extended Credit Email
meta:ExtendedCreditEmailShape a sh:NodeShape ;
  sh:targetClass meta:ExtendedCreditEmail ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditEmail/email> ;
    sh:name "email" ;
    sh:description "Represents the email address associated with the extended credit." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ExtendedCreditEmail/id> ;
    sh:name "id" ;
    sh:description "Identifies the extended credit email." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Delivery Check
meta:DeliveryCheckShape a sh:NodeShape ;
  sh:targetClass meta:DeliveryCheck ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheck/checkName> ;
    sh:name "check name" ;
    sh:description "Identifies the delivery check." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheck/description> ;
    sh:name "description" ;
    sh:description "Describes the delivery check." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheck/extraInfo> ;
    sh:name "extra info" ;
    sh:description "Provides additional information about the delivery check." ;
    sh:node meta:DeliveryCheckExtraInfoShape ;
    sh:class meta:DeliveryCheckExtraInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheck/summary> ;
    sh:name "summary" ;
    sh:description "Summarizes the delivery check." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Delivery Check Extra Info
meta:DeliveryCheckExtraInfoShape a sh:NodeShape ;
  sh:targetClass meta:DeliveryCheckExtraInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheckExtraInfo/adgroupIds> ;
    sh:name "adgroup ids" ;
    sh:description "Lists the ad group identifiers associated with the delivery check information." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheckExtraInfo/campaignIds> ;
    sh:name "campaign ids" ;
    sh:description "Lists the campaign identifiers associated with the delivery check information." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.DeliveryCheckExtraInfo/countries> ;
    sh:name "countries" ;
    sh:description "Lists the countries associated with the delivery check information." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Reach Frequency Spec
meta:ReachFrequencySpecShape a sh:NodeShape ;
  sh:targetClass meta:ReachFrequencySpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/countries> ;
    sh:name "countries" ;
    sh:description "The countries included in the reach and frequency specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/defaultCreationData> ;
    sh:name "default creation data" ;
    sh:description "Default data associated with creating the reach and frequency specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/globalIoMaxCampaignDuration> ;
    sh:name "global io max campaign duration" ;
    sh:description "The global maximum campaign duration specified for the reach and frequency specification." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/maxCampaignDuration> ;
    sh:name "max campaign duration" ;
    sh:description "The maximum campaign duration specified for the reach and frequency specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/maxDaysToFinish> ;
    sh:name "max days to finish" ;
    sh:description "The maximum number of days specified to finish the reach and frequency activity." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/maxPauseWithoutPredictionRerun> ;
    sh:name "max pause without prediction rerun" ;
    sh:description "The maximum pause specified without rerunning a prediction." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/minCampaignDuration> ;
    sh:name "min campaign duration" ;
    sh:description "The minimum campaign duration specified for the reach and frequency specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ReachFrequencySpec/minReachLimits> ;
    sh:name "min reach limits" ;
    sh:description "The minimum reach limits specified for the reach and frequency specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Account Marketing Messages Settings
meta:AdAccountMarketingMessagesSettingsShape a sh:NodeShape ;
  sh:targetClass meta:AdAccountMarketingMessagesSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAccountMarketingMessagesSettings/whatsappActivationStatus> ;
    sh:name "whatsapp activation status" ;
    sh:description "Represents the WhatsApp activation status in the marketing messages settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Conversion Action Query
meta:ConversionActionQueryShape a sh:NodeShape ;
  sh:targetClass meta:ConversionActionQuery ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/actionType> ;
    sh:name "action type" ;
    sh:description "The types of actions included in the conversion action query." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/application> ;
    sh:name "application" ;
    sh:description "The applications included in the conversion action query." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/conversionId> ;
    sh:name "conversion id" ;
    sh:description "The conversion identifiers included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/creative> ;
    sh:name "creative" ;
    sh:description "The creatives included in the conversion action query." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/dataset> ;
    sh:name "dataset" ;
    sh:description "The datasets included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/datasetSplit> ;
    sh:name "dataset split" ;
    sh:description "The dataset splits included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/event> ;
    sh:name "event" ;
    sh:description "The events included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/eventCreator> ;
    sh:name "event creator" ;
    sh:description "The creators associated with events in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/eventType> ;
    sh:name "event type" ;
    sh:description "The event types included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/fbPixel> ;
    sh:name "fb pixel" ;
    sh:description "Identifies a Facebook pixel included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/fbPixelEvent> ;
    sh:name "fb pixel event" ;
    sh:description "Identifies a Facebook pixel event included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/leadgen> ;
    sh:name "leadgen" ;
    sh:description "Identifies a lead-generation conversion action included in the query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/object> ;
    sh:name "object" ;
    sh:description "Identifies an object included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/objectDomain> ;
    sh:name "object domain" ;
    sh:description "Identifies the domain associated with the object in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/offer> ;
    sh:name "offer" ;
    sh:description "Identifies an offer included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/offerCreator> ;
    sh:name "offer creator" ;
    sh:description "Identifies the creator associated with the offer in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/offsitePixel> ;
    sh:name "offsite pixel" ;
    sh:description "Identifies an offsite pixel included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/page> ;
    sh:name "page" ;
    sh:description "Identifies a page included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/pageParent> ;
    sh:name "page parent" ;
    sh:description "Identifies the parent page associated with the page in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/post> ;
    sh:name "post" ;
    sh:description "Identifies a post included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/postObject> ;
    sh:name "post object" ;
    sh:description "Identifies the object associated with the post in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/postObjectWall> ;
    sh:name "post object wall" ;
    sh:description "Identifies the wall associated with the post object in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/postWall> ;
    sh:name "post wall" ;
    sh:description "Identifies the wall associated with the post in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/question> ;
    sh:name "question" ;
    sh:description "Identifies a question included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/questionCreator> ;
    sh:name "question creator" ;
    sh:description "Identifies the creator associated with the question in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/response> ;
    sh:name "response" ;
    sh:description "Identifies a response included in the conversion action query." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.ConversionActionQuery/subtype> ;
    sh:name "subtype" ;
    sh:description "Identifies the subtype used in the conversion action query." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Ad Creative
meta:AdCreativeShape a sh:NodeShape ;
  sh:targetClass meta:AdCreative ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/accountId> ;
    sh:name "account id" ;
    sh:description "Identifies the account associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/actorId> ;
    sh:name "actor id" ;
    sh:description "Identifies the actor associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/adDisclaimerSpec> ;
    sh:name "ad disclaimer spec" ;
    sh:description "Contains the ad disclaimer specification for the creative." ;
    sh:node meta:AdCreativeAdDisclaimerShape ;
    sh:class meta:AdCreativeAdDisclaimer ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists the ad labels associated with the creative." ;
    sh:node meta:AdLabelShape ;
    sh:class meta:AdLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/applinkTreatment> ;
    sh:name "applink treatment" ;
    sh:description "Contains the applink treatment associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/assetFeedSpec> ;
    sh:name "asset feed spec" ;
    sh:description "Contains the asset feed specification for the creative." ;
    sh:node meta:AdAssetFeedSpecShape ;
    sh:class meta:AdAssetFeedSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/authorizationCategory> ;
    sh:name "authorization category" ;
    sh:description "Identifies the authorization category of the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/autoUpdate> ;
    sh:name "auto update" ;
    sh:description "Indicates whether auto-update applies to the creative." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/body> ;
    sh:name "body" ;
    sh:description "Contains the body text of the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/brandedContent> ;
    sh:name "branded content" ;
    sh:description "Contains the branded-content information for the creative." ;
    sh:node meta:AdCreativeBrandedContentAdsShape ;
    sh:class meta:AdCreativeBrandedContentAds ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/brandedContentSponsorPageId> ;
    sh:name "branded content sponsor page id" ;
    sh:description "Identifies the sponsor page for the creative's branded content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/bundleFolderId> ;
    sh:name "bundle folder id" ;
    sh:description "Identifies the bundle folder associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/callToAction> ;
    sh:name "call to action" ;
    sh:description "Contains the call-to-action information for the creative." ;
    sh:node meta:AdCreativeLinkDataCallToActionShape ;
    sh:class meta:AdCreativeLinkDataCallToAction ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/callToActionType> ;
    sh:name "call to action type" ;
    sh:description "Identifies the call-to-action type for the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ADD_TO_CART" "APPLY_NOW" "ASK_ABOUT_SERVICES" "ASK_FOR_MORE_INFO" "AUDIO_CALL" "BOOK_A_CONSULTATION" "BOOK_NOW" "BOOK_TRAVEL" "BUY" "BUY_NOW" "BUY_TICKETS" "BUY_VIA_MESSAGE" "CALL" "CALL_ME" "CALL_NOW" "CHAT_WITH_US" "CONFIRM" "CONTACT" "CONTACT_US" "DONATE" "DONATE_NOW" "DOWNLOAD" "EVENT_RSVP" "FIND_A_GROUP" "FIND_YOUR_GROUPS" "FOLLOW_NEWS_STORYLINE" "FOLLOW_PAGE" "FOLLOW_USER" "GET_A_QUOTE" "GET_DIRECTIONS" "GET_IN_TOUCH" "GET_OFFER" "GET_OFFER_VIEW" "GET_PROMOTIONS" "GET_QUOTE" "GET_SHOWTIMES" "GET_STARTED" "INQUIRE_NOW" "INSTALL_APP" "INSTALL_MOBILE_APP" "JOIN_CHANNEL" "LEARN_MORE" "LIKE_PAGE" "LISTEN_MUSIC" "LISTEN_NOW" "MAKE_AN_APPOINTMENT" "MESSAGE_PAGE" "MOBILE_DOWNLOAD" "NO_BUTTON" "OPEN_INSTANT_APP" "OPEN_LINK" "ORDER_NOW" "PAY_TO_ACCESS" "PLAY_GAME" "PLAY_GAME_ON_FACEBOOK" "PURCHASE_GIFT_CARDS" "RAISE_MONEY" "RECORD_NOW" "REFER_FRIENDS" "REQUEST_TIME" "SAY_THANKS" "SEE_MORE" "SELL_NOW" "SEND_A_GIFT" "SEND_GIFT_MONEY" "SEND_UPDATES" "SHARE" "SHOP_NOW" "SIGN_UP" "SOTTO_SUBSCRIBE" "START_ORDER" "SUBSCRIBE" "SWIPE_UP_PRODUCT" "SWIPE_UP_SHOP" "UPDATE_APP" "USE_APP" "USE_MOBILE_APP" "VIDEO_ANNOTATION" "VIDEO_CALL" "VIEW_CART" "VIEW_CHANNEL" "VIEW_IN_CART" "VIEW_PRODUCT" "VISIT_PAGES_FEED" "WATCH_LIVE_VIDEO" "WATCH_MORE" "WATCH_VIDEO" "WHATSAPP_MESSAGE" "WOODHENGE_SUPPORT" "BROWSE_SHOP" "FIND_OUT_MORE" "GET_DETAILS" "SEE_SHOP" "SHOP_WITH_AI" "TRY_DEMO" "TRY_ON_WITH_AI" "VISIT_WEBSITE" "ASK_A_QUESTION" "ASK_US" "CHAT_NOW" "START_A_CHAT" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/categorizationCriteria> ;
    sh:name "categorization criteria" ;
    sh:description "Contains the categorization criteria for the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/categoryMediaSource> ;
    sh:name "category media source" ;
    sh:description "Identifies the media source for the creative's category." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/collaborativeAdsLsbImageBankId> ;
    sh:name "collaborative ads lsb image bank id" ;
    sh:description "Identifies the image bank associated with the creative's collaborative ads LSB." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/contextualMultiAds> ;
    sh:name "contextual multi ads" ;
    sh:description "Contains the contextual multi-ads information for the creative." ;
    sh:node meta:AdCreativeContextualMultiAdsShape ;
    sh:class meta:AdCreativeContextualMultiAds ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/creativeSourcingSpec> ;
    sh:name "creative sourcing spec" ;
    sh:description "Contains the sourcing specification for the creative." ;
    sh:node meta:AdCreativeSourcingSpecShape ;
    sh:class meta:AdCreativeSourcingSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/degreesOfFreedomSpec> ;
    sh:name "degrees of freedom spec" ;
    sh:description "Contains the degrees-of-freedom specification for the creative." ;
    sh:node meta:AdCreativeDegreesOfFreedomSpecShape ;
    sh:class meta:AdCreativeDegreesOfFreedomSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/destinationSetId> ;
    sh:name "destination set id" ;
    sh:description "Identifies the destination set associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/dynamicAdVoice> ;
    sh:name "dynamic ad voice" ;
    sh:description "Identifies the dynamic ad voice associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/effectiveAuthorizationCategory> ;
    sh:name "effective authorization category" ;
    sh:description "Identifies the effective authorization category of the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/effectiveInstagramMediaId> ;
    sh:name "effective instagram media id" ;
    sh:description "Identifies the effective Instagram media associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/effectiveObjectStoryId> ;
    sh:name "effective object story id" ;
    sh:description "Identifies the effective object story associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/enableDirectInstall> ;
    sh:name "enable direct install" ;
    sh:description "Indicates whether direct installation is enabled for the creative." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/enableLaunchInstantApp> ;
    sh:name "enable launch instant app" ;
    sh:description "Indicates whether launching an Instant App is enabled for the creative." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/facebookBrandedContent> ;
    sh:name "facebook branded content" ;
    sh:description "Branded-content information associated with the Facebook ad creative." ;
    sh:node meta:AdCreativeFacebookBrandedContentShape ;
    sh:class meta:AdCreativeFacebookBrandedContent ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/id> ;
    sh:name "id" ;
    sh:description "The identifier of the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/imageCrops> ;
    sh:name "image crops" ;
    sh:description "Crop information for an image used by the ad creative." ;
    sh:node meta:AdsImageCropsShape ;
    sh:class meta:AdsImageCrops ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/imageHash> ;
    sh:name "image hash" ;
    sh:description "The hash associated with an image used by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/imageUrl> ;
    sh:name "image url" ;
    sh:description "The URL of an image used by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/instagramBrandedContent> ;
    sh:name "instagram branded content" ;
    sh:description "Branded-content information associated with the Instagram ad creative." ;
    sh:node meta:AdCreativeInstagramBrandedContentShape ;
    sh:class meta:AdCreativeInstagramBrandedContent ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/instagramPermalinkUrl> ;
    sh:name "instagram permalink url" ;
    sh:description "The permalink URL for the Instagram media associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/instagramUserId> ;
    sh:name "instagram user id" ;
    sh:description "The identifier of the Instagram user associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/interactiveComponentsSpec> ;
    sh:name "interactive components spec" ;
    sh:description "The specification for interactive components in the ad creative." ;
    sh:node meta:AdCreativeInteractiveComponentsSpecShape ;
    sh:class meta:AdCreativeInteractiveComponentsSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/linkDeepLinkUrl> ;
    sh:name "link deep link url" ;
    sh:description "The deep-link URL associated with the ad creative's link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/linkDestinationDisplayUrl> ;
    sh:name "link destination display url" ;
    sh:description "The URL displayed as the destination for the ad creative's link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/linkOgId> ;
    sh:name "link og id" ;
    sh:description "The identifier of the Open Graph object associated with the ad creative's link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/linkUrl> ;
    sh:name "link url" ;
    sh:description "The URL targeted by the ad creative's link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/messengerSponsoredMessage> ;
    sh:name "messenger sponsored message" ;
    sh:description "The sponsored message associated with the ad creative in Messenger." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/name> ;
    sh:name "name" ;
    sh:description "The name of the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/objectId> ;
    sh:name "object id" ;
    sh:description "The identifier of the object represented by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/objectStoreUrl> ;
    sh:name "object store url" ;
    sh:description "The store URL associated with the object represented by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/objectStoryId> ;
    sh:name "object story id" ;
    sh:description "The identifier of the story object represented by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/objectStorySpec> ;
    sh:name "object story spec" ;
    sh:description "The story specification represented by the ad creative." ;
    sh:node meta:AdCreativeObjectStorySpecShape ;
    sh:class meta:AdCreativeObjectStorySpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/objectType> ;
    sh:name "object type" ;
    sh:description "The type of object represented by the ad creative, such as an application, event, page, photo, post, or video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "APPLICATION" "DOMAIN" "EVENT" "INVALID" "OFFER" "PAGE" "PHOTO" "POST_DELETED" "PRIVACY_CHECK_FAIL" "SHARE" "STATUS" "STORE_ITEM" "VIDEO" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/objectUrl> ;
    sh:name "object url" ;
    sh:description "The URL of the object represented by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/omnichannelLinkSpec> ;
    sh:name "omnichannel link spec" ;
    sh:description "The specification for the ad creative's omnichannel link." ;
    sh:node meta:AdCreativeOmnichannelLinkSpecShape ;
    sh:class meta:AdCreativeOmnichannelLinkSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/pageWelcomeMessage> ;
    sh:name "page welcome message" ;
    sh:description "The welcome message associated with the page represented by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/photoAlbumSourceObjectStoryId> ;
    sh:name "photo album source object story id" ;
    sh:description "The identifier of the source story object for the photo album used by the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/placePageSetId> ;
    sh:name "place page set id" ;
    sh:description "The identifier of the place page set associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/platformCustomizations> ;
    sh:name "platform customizations" ;
    sh:description "Platform-specific customizations for the ad creative." ;
    sh:node meta:AdCreativePlatformCustomizationShape ;
    sh:class meta:AdCreativePlatformCustomization ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/playableAssetId> ;
    sh:name "playable asset id" ;
    sh:description "The identifier of the playable asset associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/portraitCustomizations> ;
    sh:name "portrait customizations" ;
    sh:description "Portrait-format customizations for the ad creative." ;
    sh:node meta:AdCreativePortraitCustomizationsShape ;
    sh:class meta:AdCreativePortraitCustomizations ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/productData> ;
    sh:name "product data" ;
    sh:description "Product data associated with the ad creative." ;
    sh:node meta:AdCreativeProductDataShape ;
    sh:class meta:AdCreativeProductData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/productSetId> ;
    sh:name "product set id" ;
    sh:description "The identifier of the product set associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/recommenderSettings> ;
    sh:name "recommender settings" ;
    sh:description "Recommendation settings associated with the ad creative." ;
    sh:node meta:AdCreativeRecommenderSettingsShape ;
    sh:class meta:AdCreativeRecommenderSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/regionalRegulationDisclaimerSpec> ;
    sh:name "regional regulation disclaimer spec" ;
    sh:description "The regional regulatory disclaimer specification for the ad creative." ;
    sh:node meta:AdCreativeRegionalRegulationDisclaimerShape ;
    sh:class meta:AdCreativeRegionalRegulationDisclaimer ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/sourceFacebookPostId> ;
    sh:name "source facebook post id" ;
    sh:description "The identifier of the Facebook post used as the ad creative's source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/sourceInstagramMediaId> ;
    sh:name "source instagram media id" ;
    sh:description "The identifier of the Instagram media used as the ad creative's source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/status> ;
    sh:name "status" ;
    sh:description "The current status of the ad creative, such as active, deleted, in process, or with issues." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ACTIVE" "DELETED" "IN_PROCESS" "WITH_ISSUES" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/templateUrl> ;
    sh:name "template url" ;
    sh:description "The URL of the template associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/templateUrlSpec> ;
    sh:name "template url spec" ;
    sh:description "The specification for the template URL associated with the ad creative." ;
    sh:node meta:AdCreativeTemplateURLSpecShape ;
    sh:class meta:AdCreativeTemplateURLSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/thumbnailId> ;
    sh:name "thumbnail id" ;
    sh:description "The identifier of the thumbnail associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/thumbnailUrl> ;
    sh:name "thumbnail url" ;
    sh:description "The URL of the thumbnail associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/title> ;
    sh:name "title" ;
    sh:description "The title of the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/urlTags> ;
    sh:name "url tags" ;
    sh:description "The tags associated with URLs in the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/usePageActorOverride> ;
    sh:name "use page actor override" ;
    sh:description "Whether the ad creative uses a page actor override." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/videoId> ;
    sh:name "video id" ;
    sh:description "The identifier of the video associated with the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/destinationSpec> ;
    sh:name "destination spec" ;
    sh:description "The specification for the destination of the ad creative." ;
    sh:node meta:AdCreativeDestinationSpecShape ;
    sh:class meta:AdCreativeDestinationSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/formatTransformationSpec> ;
    sh:name "format transformation spec" ;
    sh:description "The format transformation specifications associated with the ad creative." ;
    sh:node meta:AdCreativeFormatTransformationSpecShape ;
    sh:class meta:AdCreativeFormatTransformationSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/mediaSourcingSpec> ;
    sh:name "media sourcing spec" ;
    sh:description "The specification for sourcing media for the ad creative." ;
    sh:node meta:AdCreativeMediaSourcingSpecShape ;
    sh:class meta:AdCreativeMediaSourcingSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/marketingMessageStructuredSpec> ;
    sh:name "marketing message structured spec" ;
    sh:description "The structured specification for the marketing message in the ad creative." ;
    sh:node meta:AdCreativeMarketingMessageStructuredSpecShape ;
    sh:class meta:AdCreativeMarketingMessageStructuredSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreative/productSuggestionSettings> ;
    sh:name "product suggestion settings" ;
    sh:description "Settings for product suggestions associated with the ad creative." ;
    sh:node meta:AdCreativeProductSuggestionSettingsShape ;
    sh:class meta:AdCreativeProductSuggestionSettings ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Ad Disclaimer
meta:AdCreativeAdDisclaimerShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeAdDisclaimer ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeAdDisclaimer/text> ;
    sh:name "text" ;
    sh:description "The text of the ad disclaimer." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeAdDisclaimer/title> ;
    sh:name "title" ;
    sh:description "The title of the ad disclaimer." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeAdDisclaimer/url> ;
    sh:name "url" ;
    sh:description "The URL associated with the ad disclaimer." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec
meta:AdAssetFeedSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/adFormats> ;
    sh:name "ad formats" ;
    sh:description "Represents the ad formats available in the asset feed specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/additionalData> ;
    sh:name "additional data" ;
    sh:description "Represents additional data associated with the asset feed specification." ;
    sh:node meta:AdAssetFeedAdditionalDataShape ;
    sh:class meta:AdAssetFeedAdditionalData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/appProductPageId> ;
    sh:name "app product page id" ;
    sh:description "Represents the app product Page identifier in the asset feed specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/assetCustomizationRules> ;
    sh:name "asset customization rules" ;
    sh:description "Represents the asset customization rules in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecAssetCustomizationRuleShape ;
    sh:class meta:AdAssetFeedSpecAssetCustomizationRule ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/audios> ;
    sh:name "audios" ;
    sh:description "Represents audio objects in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/autotranslate> ;
    sh:name "autotranslate" ;
    sh:description "Represents the autotranslation information in the asset feed specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/bodies> ;
    sh:name "bodies" ;
    sh:description "Represents body-text assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecBodyShape ;
    sh:class meta:AdAssetFeedSpecBody ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/callAdsConfiguration> ;
    sh:name "call ads configuration" ;
    sh:description "Represents the call ads configuration in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/callToActionTypes> ;
    sh:name "call to action types" ;
    sh:description "Represents the call-to-action types available in the asset feed specification." ;
    sh:datatype xsd:string ;
    sh:in ( "ADD_TO_CART" "APPLY_NOW" "ASK_ABOUT_SERVICES" "ASK_FOR_MORE_INFO" "AUDIO_CALL" "BOOK_A_CONSULTATION" "BOOK_NOW" "BOOK_TRAVEL" "BUY" "BUY_NOW" "BUY_TICKETS" "BUY_VIA_MESSAGE" "CALL" "CALL_ME" "CALL_NOW" "CHAT_WITH_US" "CONFIRM" "CONTACT" "CONTACT_US" "DONATE" "DONATE_NOW" "DOWNLOAD" "EVENT_RSVP" "FIND_A_GROUP" "FIND_YOUR_GROUPS" "FOLLOW_NEWS_STORYLINE" "FOLLOW_PAGE" "FOLLOW_USER" "GET_A_QUOTE" "GET_DIRECTIONS" "GET_IN_TOUCH" "GET_OFFER" "GET_OFFER_VIEW" "GET_PROMOTIONS" "GET_QUOTE" "GET_SHOWTIMES" "GET_STARTED" "INQUIRE_NOW" "INSTALL_APP" "INSTALL_MOBILE_APP" "JOIN_CHANNEL" "LEARN_MORE" "LIKE_PAGE" "LISTEN_MUSIC" "LISTEN_NOW" "MAKE_AN_APPOINTMENT" "MESSAGE_PAGE" "MOBILE_DOWNLOAD" "NO_BUTTON" "OPEN_INSTANT_APP" "OPEN_LINK" "ORDER_NOW" "PAY_TO_ACCESS" "PLAY_GAME" "PLAY_GAME_ON_FACEBOOK" "PURCHASE_GIFT_CARDS" "RAISE_MONEY" "RECORD_NOW" "REFER_FRIENDS" "REQUEST_TIME" "SAY_THANKS" "SEE_MORE" "SELL_NOW" "SEND_A_GIFT" "SEND_GIFT_MONEY" "SEND_UPDATES" "SHARE" "SHOP_NOW" "SIGN_UP" "SOTTO_SUBSCRIBE" "START_ORDER" "SUBSCRIBE" "SWIPE_UP_PRODUCT" "SWIPE_UP_SHOP" "UPDATE_APP" "USE_APP" "USE_MOBILE_APP" "VIDEO_ANNOTATION" "VIDEO_CALL" "VIEW_CART" "VIEW_CHANNEL" "VIEW_IN_CART" "VIEW_PRODUCT" "VISIT_PAGES_FEED" "WATCH_LIVE_VIDEO" "WATCH_MORE" "WATCH_VIDEO" "WHATSAPP_MESSAGE" "WOODHENGE_SUPPORT" "BROWSE_SHOP" "FIND_OUT_MORE" "GET_DETAILS" "SEE_SHOP" "SHOP_WITH_AI" "TRY_DEMO" "TRY_ON_WITH_AI" "VISIT_WEBSITE" "ASK_A_QUESTION" "ASK_US" "CHAT_NOW" "START_A_CHAT" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/callToActions> ;
    sh:name "call to actions" ;
    sh:description "Represents call-to-action assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecCallToActionShape ;
    sh:class meta:AdAssetFeedSpecCallToAction ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/captions> ;
    sh:name "captions" ;
    sh:description "Represents caption assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecCaptionShape ;
    sh:class meta:AdAssetFeedSpecCaption ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/carousels> ;
    sh:name "carousels" ;
    sh:description "Represents carousel assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecCarouselShape ;
    sh:class meta:AdAssetFeedSpecCarousel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/ctwaConsentData> ;
    sh:name "ctwa consent data" ;
    sh:description "Represents click-to-WhatsApp consent data in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/descriptions> ;
    sh:name "descriptions" ;
    sh:description "Represents description assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecDescriptionShape ;
    sh:class meta:AdAssetFeedSpecDescription ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/events> ;
    sh:name "events" ;
    sh:description "Represents event assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecEventsShape ;
    sh:class meta:AdAssetFeedSpecEvents ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/groups> ;
    sh:name "groups" ;
    sh:description "Represents group rules in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecGroupRuleShape ;
    sh:class meta:AdAssetFeedSpecGroupRule ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/images> ;
    sh:name "images" ;
    sh:description "Represents image assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecImageShape ;
    sh:class meta:AdAssetFeedSpecImage ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/linkUrls> ;
    sh:name "link urls" ;
    sh:description "Represents link URL assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecLinkURLShape ;
    sh:class meta:AdAssetFeedSpecLinkURL ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/messageExtensions> ;
    sh:name "message extensions" ;
    sh:description "Represents message extensions in the asset feed specification." ;
    sh:node meta:AdAssetMessageExtensionsShape ;
    sh:class meta:AdAssetMessageExtensions ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/onsiteDestinations> ;
    sh:name "onsite destinations" ;
    sh:description "Represents onsite destinations in the asset feed specification." ;
    sh:node meta:AdAssetOnsiteDestinationsShape ;
    sh:class meta:AdAssetOnsiteDestinations ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/optimizationType> ;
    sh:name "optimization type" ;
    sh:description "Represents the optimization type in the asset feed specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/promotionalMetadata> ;
    sh:name "promotional metadata" ;
    sh:description "Represents promotional metadata in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/reasonsToShop> ;
    sh:name "reasons to shop" ;
    sh:description "Indicates whether reasons to shop are included in the asset feed specification." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/shopsBundle> ;
    sh:name "shops bundle" ;
    sh:description "Indicates whether a Shops bundle is included in the asset feed specification." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/titles> ;
    sh:name "titles" ;
    sh:description "Represents title assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecTitleShape ;
    sh:class meta:AdAssetFeedSpecTitle ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/translations> ;
    sh:name "translations" ;
    sh:description "Represents translation objects in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/upcomingEvents> ;
    sh:name "upcoming events" ;
    sh:description "Represents upcoming event objects in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/videos> ;
    sh:name "videos" ;
    sh:description "Represents video assets in the asset feed specification." ;
    sh:node meta:AdAssetFeedSpecVideoShape ;
    sh:class meta:AdAssetFeedSpecVideo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpec/webDestinationSpec> ;
    sh:name "web destination spec" ;
    sh:description "Represents the web destination specification in the asset feed specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Additional Data
meta:AdAssetFeedAdditionalDataShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedAdditionalData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedAdditionalData/automatedProductTags> ;
    sh:name "automated product tags" ;
    sh:description "Indicates whether automated product tags are included in the additional ad asset data." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedAdditionalData/brandPageId> ;
    sh:name "brand page id" ;
    sh:description "Represents the identifier of the brand Page in the additional ad asset data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedAdditionalData/isClickToMessage> ;
    sh:name "is click to message" ;
    sh:description "Indicates whether the additional ad asset data is for click-to-message." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedAdditionalData/multiShareEndCard> ;
    sh:name "multi share end card" ;
    sh:description "Indicates whether the additional ad asset data includes a multi-share end card." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedAdditionalData/pageWelcomeMessage> ;
    sh:name "page welcome message" ;
    sh:description "Represents the Page welcome message in the additional ad asset data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedAdditionalData/partnerAppWelcomeMessageFlowId> ;
    sh:name "partner app welcome message flow id" ;
    sh:description "Represents the partner app welcome-message flow identifier in the additional ad asset data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Asset Customization Rule
meta:AdAssetFeedSpecAssetCustomizationRuleShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecAssetCustomizationRule ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/bodyLabel> ;
    sh:name "body label" ;
    sh:description "Represents the asset label assigned to the body in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/callToActionLabel> ;
    sh:name "call to action label" ;
    sh:description "Represents the asset label assigned to the call to action in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/callToActionTypeLabel> ;
    sh:name "call to action type label" ;
    sh:description "Represents the asset label assigned to the call-to-action type in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/captionLabel> ;
    sh:name "caption label" ;
    sh:description "Represents the asset label assigned to the caption in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/carouselLabel> ;
    sh:name "carousel label" ;
    sh:description "Represents the asset label assigned to the carousel in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/customizationSpec> ;
    sh:name "customization spec" ;
    sh:description "Represents the customization specification for the asset customization rule." ;
    sh:node meta:AdAssetCustomizationRuleCustomizationSpecShape ;
    sh:class meta:AdAssetCustomizationRuleCustomizationSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/descriptionLabel> ;
    sh:name "description label" ;
    sh:description "Represents the asset label assigned to the description in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/imageLabel> ;
    sh:name "image label" ;
    sh:description "Represents the asset label assigned to the image in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/isDefault> ;
    sh:name "is default" ;
    sh:description "Indicates whether the asset customization rule is the default rule." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/linkUrlLabel> ;
    sh:name "link url label" ;
    sh:description "Represents the asset label assigned to the link URL in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/priority> ;
    sh:name "priority" ;
    sh:description "Represents the priority of the asset customization rule." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/titleLabel> ;
    sh:name "title label" ;
    sh:description "Represents the asset label assigned to the title in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetCustomizationRule/videoLabel> ;
    sh:name "video label" ;
    sh:description "Represents the asset label assigned to the video in the customization rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Asset Label
meta:AdAssetFeedSpecAssetLabelShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecAssetLabel ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetLabel/id> ;
    sh:name "id" ;
    sh:description "Represents the identifier of an ad asset label." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecAssetLabel/name> ;
    sh:name "name" ;
    sh:description "Represents the name of an ad asset label." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Customization Rule Customization Spec
meta:AdAssetCustomizationRuleCustomizationSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetCustomizationRuleCustomizationSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/ageMax> ;
    sh:name "age max" ;
    sh:description "Represents the maximum age in the customization specification." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/ageMin> ;
    sh:name "age min" ;
    sh:description "Represents the minimum age in the customization specification." ;
    sh:datatype xsd:unsignedInt ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/audienceNetworkPositions> ;
    sh:name "audience network positions" ;
    sh:description "Represents the Audience Network positions in the customization specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/devicePlatforms> ;
    sh:name "device platforms" ;
    sh:description "Represents the device platforms targeted by the customization specification, including desktop or mobile." ;
    sh:datatype xsd:string ;
    sh:in ( "desktop" "mobile" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/facebookPositions> ;
    sh:name "facebook positions" ;
    sh:description "Represents the Facebook positions in the customization specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/geoLocations> ;
    sh:name "geo locations" ;
    sh:description "Represents the geographic locations in the customization specification." ;
    sh:node meta:TargetingGeoLocationShape ;
    sh:class meta:TargetingGeoLocation ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/instagramPositions> ;
    sh:name "instagram positions" ;
    sh:description "Represents the Instagram positions in the customization specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/locales> ;
    sh:name "locales" ;
    sh:description "Represents the locales in the customization specification." ;
    sh:datatype xsd:unsignedInt ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/messengerPositions> ;
    sh:name "messenger positions" ;
    sh:description "Represents the Messenger positions in the customization specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/publisherPlatforms> ;
    sh:name "publisher platforms" ;
    sh:description "Represents the publisher platforms in the customization specification." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetCustomizationRuleCustomizationSpec/threadsPositions> ;
    sh:name "threads positions" ;
    sh:description "Represents the Threads positions in the customization specification." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Ad Asset Feed Spec Body
meta:AdAssetFeedSpecBodyShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecBody ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecBody/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Represents the ad asset labels associated with the body." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecBody/text> ;
    sh:name "text" ;
    sh:description "Represents the body text." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecBody/urlTags> ;
    sh:name "url tags" ;
    sh:description "Represents the URL tags associated with the body." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Call To Action
meta:AdAssetFeedSpecCallToActionShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecCallToAction ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCallToAction/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Represents the ad asset labels associated with the call to action." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCallToAction/type> ;
    sh:name "type" ;
    sh:description "Represents the type of the call to action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCallToAction/value> ;
    sh:name "value" ;
    sh:description "Represents the value associated with the call to action." ;
    sh:node meta:AdCreativeLinkDataCallToActionValueShape ;
    sh:class meta:AdCreativeLinkDataCallToActionValue ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Link Data Call To Action Value
meta:AdCreativeLinkDataCallToActionValueShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkDataCallToActionValue ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/androidUrl> ;
    sh:name "android url" ;
    sh:description "Contains the URL associated with the Android destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/appDestination> ;
    sh:name "app destination" ;
    sh:description "Specifies the destination within an application." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/appLink> ;
    sh:name "app link" ;
    sh:description "Contains the app link associated with the call-to-action destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/application> ;
    sh:name "application" ;
    sh:description "Identifies the application associated with the call-to-action destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/eventId> ;
    sh:name "event id" ;
    sh:description "Identifies the event associated with the call-to-action destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/iosUrl> ;
    sh:name "ios url" ;
    sh:description "Contains the URL associated with the iOS destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/landOnWhatsappCatalog> ;
    sh:name "land on whatsapp catalog" ;
    sh:description "Specifies whether the destination lands on a WhatsApp catalog." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/landOnWhatsappProfile> ;
    sh:name "land on whatsapp profile" ;
    sh:description "Specifies whether the destination lands on a WhatsApp profile." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/leadGenFormId> ;
    sh:name "lead gen form id" ;
    sh:description "Identifies the lead-generation form associated with the call to action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/link> ;
    sh:name "link" ;
    sh:description "Contains the link associated with the call-to-action destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/linkCaption> ;
    sh:name "link caption" ;
    sh:description "Contains the caption for the call-to-action link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/linkFormat> ;
    sh:name "link format" ;
    sh:description "Specifies the format of the call-to-action link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/objectStoreUrls> ;
    sh:name "object store urls" ;
    sh:description "Contains object-store URLs associated with the call-to-action value." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/page> ;
    sh:name "page" ;
    sh:description "Identifies the Page associated with the call-to-action destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/productLink> ;
    sh:name "product link" ;
    sh:description "Contains the product link associated with the call to action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToActionValue/whatsappNumber> ;
    sh:name "whatsapp number" ;
    sh:description "Contains the WhatsApp number associated with the call-to-action destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Caption
meta:AdAssetFeedSpecCaptionShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecCaption ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCaption/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Represents the ad asset labels associated with the caption." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCaption/text> ;
    sh:name "text" ;
    sh:description "Represents the caption text." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCaption/urlTags> ;
    sh:name "url tags" ;
    sh:description "Represents the URL tags associated with the caption." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Carousel
meta:AdAssetFeedSpecCarouselShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecCarousel ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarousel/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Represents the ad asset labels associated with the carousel." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarousel/childAttachments> ;
    sh:name "child attachments" ;
    sh:description "Represents the child attachments in the carousel." ;
    sh:node meta:AdAssetFeedSpecCarouselChildAttachmentShape ;
    sh:class meta:AdAssetFeedSpecCarouselChildAttachment ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarousel/multiShareEndCard> ;
    sh:name "multi share end card" ;
    sh:description "Indicates whether the carousel includes a multi-share end card." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarousel/multiShareOptimized> ;
    sh:name "multi share optimized" ;
    sh:description "Indicates whether the carousel is optimized for multi-share." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Carousel Child Attachment
meta:AdAssetFeedSpecCarouselChildAttachmentShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecCarouselChildAttachment ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/bodyLabel> ;
    sh:name "body label" ;
    sh:description "Represents the asset label assigned to the child attachment's body." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/callToActionTypeLabel> ;
    sh:name "call to action type label" ;
    sh:description "Represents the asset label assigned to the child attachment's call-to-action type." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/captionLabel> ;
    sh:name "caption label" ;
    sh:description "Represents the asset label assigned to the child attachment's caption." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/descriptionLabel> ;
    sh:name "description label" ;
    sh:description "Represents the asset label assigned to the child attachment's description." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/imageLabel> ;
    sh:name "image label" ;
    sh:description "Represents the asset label assigned to the child attachment's image." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/linkUrlLabel> ;
    sh:name "link url label" ;
    sh:description "Represents the asset label assigned to the child attachment's link URL." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/phoneDataIdsLabel> ;
    sh:name "phone data ids label" ;
    sh:description "Represents the asset label assigned to the child attachment's phone data identifiers." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/staticCard> ;
    sh:name "static card" ;
    sh:description "Indicates whether the carousel child attachment is static." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/titleLabel> ;
    sh:name "title label" ;
    sh:description "Identifies the asset label associated with the carousel child attachment's title." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecCarouselChildAttachment/videoLabel> ;
    sh:name "video label" ;
    sh:description "Identifies the asset label associated with the carousel child attachment's video." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Description
meta:AdAssetFeedSpecDescriptionShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecDescription ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecDescription/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists the asset labels associated with the description." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecDescription/text> ;
    sh:name "text" ;
    sh:description "Contains the description text." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecDescription/urlTags> ;
    sh:name "url tags" ;
    sh:description "Contains URL tags associated with the description." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Events
meta:AdAssetFeedSpecEventsShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecEvents ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecEvents/id> ;
    sh:name "id" ;
    sh:description "Identifies the event in the asset feed specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Group Rule
meta:AdAssetFeedSpecGroupRuleShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecGroupRule ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/bodyLabel> ;
    sh:name "body label" ;
    sh:description "Identifies the asset label used for the body in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/captionLabel> ;
    sh:name "caption label" ;
    sh:description "Identifies the asset label used for the caption in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/descriptionLabel> ;
    sh:name "description label" ;
    sh:description "Identifies the asset label used for the description in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/imageLabel> ;
    sh:name "image label" ;
    sh:description "Identifies the asset label used for the image in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/linkUrlLabel> ;
    sh:name "link url label" ;
    sh:description "Identifies the asset label used for the link URL in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/titleLabel> ;
    sh:name "title label" ;
    sh:description "Identifies the asset label used for the title in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecGroupRule/videoLabel> ;
    sh:name "video label" ;
    sh:description "Identifies the asset label used for the video in the group rule." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Image
meta:AdAssetFeedSpecImageShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecImage ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecImage/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists the asset labels associated with the image." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecImage/hash> ;
    sh:name "hash" ;
    sh:description "Contains the hash associated with the image." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecImage/imageCrops> ;
    sh:name "image crops" ;
    sh:description "Contains the crop information associated with the image." ;
    sh:node meta:AdsImageCropsShape ;
    sh:class meta:AdsImageCrops ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecImage/url> ;
    sh:name "url" ;
    sh:description "Contains the image URL." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecImage/urlTags> ;
    sh:name "url tags" ;
    sh:description "Contains URL tags associated with the image." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ads Image Crops
meta:AdsImageCropsShape a sh:NodeShape ;
  sh:targetClass meta:AdsImageCrops ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/100x100> ;
    sh:name "100x100" ;
    sh:description "Represents image crop data for the 100x100 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/100x72> ;
    sh:name "100x72" ;
    sh:description "Represents image crop data for the 100x72 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/191x100> ;
    sh:name "191x100" ;
    sh:description "Represents image crop data for the 191x100 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/300x400> ;
    sh:name "300x400" ;
    sh:description "Represents image crop data for the 300x400 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/400x150> ;
    sh:name "400x150" ;
    sh:description "Represents image crop data for the 400x150 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/400x500> ;
    sh:name "400x500" ;
    sh:description "Represents image crop data for the 400x500 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/600x360> ;
    sh:name "600x360" ;
    sh:description "Represents image crop data for the 600x360 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsImageCrops/90x160> ;
    sh:name "90x160" ;
    sh:description "Represents image crop data for the 90x160 variant." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Link Url
meta:AdAssetFeedSpecLinkURLShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecLinkURL ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists the asset labels associated with the link URL." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/androidUrl> ;
    sh:name "android url" ;
    sh:description "Contains the Android URL associated with the link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/carouselSeeMoreUrl> ;
    sh:name "carousel see more url" ;
    sh:description "Contains the see-more URL associated with the carousel link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/deeplinkUrl> ;
    sh:name "deeplink url" ;
    sh:description "Contains the deep link URL associated with the link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/displayUrl> ;
    sh:name "display url" ;
    sh:description "Contains the display URL associated with the link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/iosUrl> ;
    sh:name "ios url" ;
    sh:description "Contains the iOS URL associated with the link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/objectStoreUrls> ;
    sh:name "object store urls" ;
    sh:description "Lists the object-store URLs associated with the link." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/urlTags> ;
    sh:name "url tags" ;
    sh:description "Contains URL tags associated with the link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecLinkURL/websiteUrl> ;
    sh:name "website url" ;
    sh:description "Contains the website URL associated with the link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Message Extensions
meta:AdAssetMessageExtensionsShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetMessageExtensions ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetMessageExtensions/type> ;
    sh:name "type" ;
    sh:description "Identifies the type of message extension." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Onsite Destinations
meta:AdAssetOnsiteDestinationsShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetOnsiteDestinations ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetOnsiteDestinations/autoOptimization> ;
    sh:name "auto optimization" ;
    sh:description "Contains the auto-optimization setting for the onsite destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetOnsiteDestinations/detailsPageProductId> ;
    sh:name "details page product id" ;
    sh:description "Identifies the product for the onsite details page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetOnsiteDestinations/shopCollectionProductSetId> ;
    sh:name "shop collection product set id" ;
    sh:description "Identifies the product set for the shop collection." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetOnsiteDestinations/source> ;
    sh:name "source" ;
    sh:description "Identifies the source of the onsite destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetOnsiteDestinations/storefrontShopId> ;
    sh:name "storefront shop id" ;
    sh:description "Identifies the storefront shop associated with the onsite destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Title
meta:AdAssetFeedSpecTitleShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecTitle ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecTitle/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists the asset labels associated with the title." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecTitle/text> ;
    sh:name "text" ;
    sh:description "Contains the title text." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecTitle/urlTags> ;
    sh:name "url tags" ;
    sh:description "Contains URL tags associated with the title." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Asset Feed Spec Video
meta:AdAssetFeedSpecVideoShape a sh:NodeShape ;
  sh:targetClass meta:AdAssetFeedSpecVideo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecVideo/adlabels> ;
    sh:name "adlabels" ;
    sh:description "Lists the asset labels associated with the video." ;
    sh:node meta:AdAssetFeedSpecAssetLabelShape ;
    sh:class meta:AdAssetFeedSpecAssetLabel ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecVideo/captionIds> ;
    sh:name "caption ids" ;
    sh:description "Lists the caption identifiers associated with the video." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecVideo/thumbnailHash> ;
    sh:name "thumbnail hash" ;
    sh:description "Contains the hash associated with the video's thumbnail." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecVideo/thumbnailUrl> ;
    sh:name "thumbnail url" ;
    sh:description "Contains the URL of the video's thumbnail." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecVideo/urlTags> ;
    sh:name "url tags" ;
    sh:description "Contains URL tags associated with the video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdAssetFeedSpecVideo/videoId> ;
    sh:name "video id" ;
    sh:description "Identifies the video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Branded Content Ads
meta:AdCreativeBrandedContentAdsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeBrandedContentAds ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/actingBusinessId> ;
    sh:name "acting business id" ;
    sh:description "The identifier of the business acting in the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/adFormat> ;
    sh:name "ad format" ;
    sh:description "The format designation of the branded-content ad." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/automatedAdgroupCreation> ;
    sh:name "automated adgroup creation" ;
    sh:description "Whether automated ad-group creation is specified for the branded-content ad." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/contentSearchInput> ;
    sh:name "content search input" ;
    sh:description "The content search input associated with the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/creatorAdPermissionType> ;
    sh:name "creator ad permission type" ;
    sh:description "The type of ad permission associated with the creator of the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/deliverDynamicPartnerContent> ;
    sh:name "deliver dynamic partner content" ;
    sh:description "Whether dynamic partner content is specified for delivery in the branded-content ad." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/facebookBoostPostAccessToken> ;
    sh:name "facebook boost post access token" ;
    sh:description "The access token associated with boosting the Facebook post for the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/instagramBoostPostAccessToken> ;
    sh:name "instagram boost post access token" ;
    sh:description "The access token associated with boosting the Instagram post for the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/isMcaInternal> ;
    sh:name "is mca internal" ;
    sh:description "Whether the branded-content ad is marked as internal to MCA." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/parentSourceFacebookPostId> ;
    sh:name "parent source facebook post id" ;
    sh:description "The identifier of the parent Facebook post used as a source for the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/parentSourceInstagramMediaId> ;
    sh:name "parent source instagram media id" ;
    sh:description "The identifier of the parent Instagram media used as a source for the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/partners> ;
    sh:name "partners" ;
    sh:description "The partners associated with the branded-content ad." ;
    sh:node meta:AdCreativeBrandedContentAdsPartnersShape ;
    sh:class meta:AdCreativeBrandedContentAdsPartners ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/productSetPartnerSelectionStatus> ;
    sh:name "product set partner selection status" ;
    sh:description "The partner-selection status for the product set associated with the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/promotedPageId> ;
    sh:name "promoted page id" ;
    sh:description "The identifier of the page promoted by the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/testimonial> ;
    sh:name "testimonial" ;
    sh:description "The testimonial associated with the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/testimonialLocale> ;
    sh:name "testimonial locale" ;
    sh:description "The locale of the testimonial associated with the branded-content ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAds/uiVersion> ;
    sh:name "ui version" ;
    sh:description "The user-interface version specified for the branded-content ad." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Branded Content Ads Partners
meta:AdCreativeBrandedContentAdsPartnersShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeBrandedContentAdsPartners ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAdsPartners/fbPageId> ;
    sh:name "fb page id" ;
    sh:description "The identifier of the partner's Facebook page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAdsPartners/hasCreateAdsAccess> ;
    sh:name "has create ads access" ;
    sh:description "Whether the partner has create-ads access." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAdsPartners/identityType> ;
    sh:name "identity type" ;
    sh:description "The identity type of the branded-content ad partner." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAdsPartners/igAssetId> ;
    sh:name "ig asset id" ;
    sh:description "The identifier of the partner's Instagram asset." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeBrandedContentAdsPartners/igUserId> ;
    sh:name "ig user id" ;
    sh:description "The identifier of the partner's Instagram user." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Link Data Call To Action
meta:AdCreativeLinkDataCallToActionShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkDataCallToAction ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToAction/type> ;
    sh:name "type" ;
    sh:description "Specifies the call-to-action action, such as buying, signing up, learning more, or opening a link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "ADD_TO_CART" "APPLY_NOW" "ASK_ABOUT_SERVICES" "ASK_FOR_MORE_INFO" "AUDIO_CALL" "BOOK_A_CONSULTATION" "BOOK_NOW" "BOOK_TRAVEL" "BUY" "BUY_NOW" "BUY_TICKETS" "BUY_VIA_MESSAGE" "CALL" "CALL_ME" "CALL_NOW" "CHAT_WITH_US" "CONFIRM" "CONTACT" "CONTACT_US" "DONATE" "DONATE_NOW" "DOWNLOAD" "EVENT_RSVP" "FIND_A_GROUP" "FIND_YOUR_GROUPS" "FOLLOW_NEWS_STORYLINE" "FOLLOW_PAGE" "FOLLOW_USER" "GET_A_QUOTE" "GET_DIRECTIONS" "GET_IN_TOUCH" "GET_OFFER" "GET_OFFER_VIEW" "GET_PROMOTIONS" "GET_QUOTE" "GET_SHOWTIMES" "GET_STARTED" "INQUIRE_NOW" "INSTALL_APP" "INSTALL_MOBILE_APP" "JOIN_CHANNEL" "LEARN_MORE" "LIKE_PAGE" "LISTEN_MUSIC" "LISTEN_NOW" "MAKE_AN_APPOINTMENT" "MESSAGE_PAGE" "MOBILE_DOWNLOAD" "NO_BUTTON" "OPEN_INSTANT_APP" "OPEN_LINK" "ORDER_NOW" "PAY_TO_ACCESS" "PLAY_GAME" "PLAY_GAME_ON_FACEBOOK" "PURCHASE_GIFT_CARDS" "RAISE_MONEY" "RECORD_NOW" "REFER_FRIENDS" "REQUEST_TIME" "SAY_THANKS" "SEE_MORE" "SELL_NOW" "SEND_A_GIFT" "SEND_GIFT_MONEY" "SEND_UPDATES" "SHARE" "SHOP_NOW" "SIGN_UP" "SOTTO_SUBSCRIBE" "START_ORDER" "SUBSCRIBE" "SWIPE_UP_PRODUCT" "SWIPE_UP_SHOP" "UPDATE_APP" "USE_APP" "USE_MOBILE_APP" "VIDEO_ANNOTATION" "VIDEO_CALL" "VIEW_CART" "VIEW_CHANNEL" "VIEW_IN_CART" "VIEW_PRODUCT" "VISIT_PAGES_FEED" "WATCH_LIVE_VIDEO" "WATCH_MORE" "WATCH_VIDEO" "WHATSAPP_MESSAGE" "WOODHENGE_SUPPORT" "BROWSE_SHOP" "FIND_OUT_MORE" "GET_DETAILS" "SEE_SHOP" "SHOP_WITH_AI" "TRY_DEMO" "TRY_ON_WITH_AI" "VISIT_WEBSITE" "ASK_A_QUESTION" "ASK_US" "CHAT_NOW" "START_A_CHAT" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataCallToAction/value> ;
    sh:name "value" ;
    sh:description "Contains the destination and related configuration for the call to action." ;
    sh:node meta:AdCreativeLinkDataCallToActionValueShape ;
    sh:class meta:AdCreativeLinkDataCallToActionValue ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Contextual Multi Ads
meta:AdCreativeContextualMultiAdsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeContextualMultiAds ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeContextualMultiAds/enrollStatus> ;
    sh:name "enroll status" ;
    sh:description "The enrollment status for contextual multi-ads." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Sourcing Spec
meta:AdCreativeSourcingSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeSourcingSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/adExtensionsRelevancySpec> ;
    sh:name "ad extensions relevancy spec" ;
    sh:description "Represents the relevancy specification for ad extensions." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/associatedProductSetId> ;
    sh:name "associated product set id" ;
    sh:description "Identifies the product set associated with the sourcing specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/brand> ;
    sh:name "brand" ;
    sh:description "Represents the brand associated with the sourcing specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/destinationScreenshotSpec> ;
    sh:name "destination screenshot spec" ;
    sh:description "Represents the destination screenshot specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/duplicationSource> ;
    sh:name "duplication source" ;
    sh:description "Identifies the source of the duplicated creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/dynamicSiteLinksSpec> ;
    sh:name "dynamic site links spec" ;
    sh:description "Represents the specification for dynamic site links." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/enableSocialFeedbackPreservation> ;
    sh:name "enable social feedback preservation" ;
    sh:description "Indicates whether social feedback preservation is enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/featuredOfferingSpec> ;
    sh:name "featured offering spec" ;
    sh:description "Represents the featured offering specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/intent> ;
    sh:name "intent" ;
    sh:description "Represents the intent associated with the sourcing specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/ncsTestimonial> ;
    sh:name "ncs testimonial" ;
    sh:description "Represents the NCS testimonial associated with the sourcing specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/pcaSpec> ;
    sh:name "pca spec" ;
    sh:description "Represents the PCA specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/productMediaMetadataSpec> ;
    sh:name "product media metadata spec" ;
    sh:description "Represents metadata for product media." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/promotionMetadataSpec> ;
    sh:name "promotion metadata spec" ;
    sh:description "Contains promotion metadata for the sourcing specification." ;
    sh:node meta:AdCreativePromotionMetadataSpecShape ;
    sh:class meta:AdCreativePromotionMetadataSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/siteLinksDataConsented> ;
    sh:name "site links data consented" ;
    sh:description "Represents consent for site links data." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/siteLinksSpec> ;
    sh:name "site links spec" ;
    sh:description "Contains site link specifications for the sourcing specification." ;
    sh:node meta:AdCreativeSiteLinksSpecShape ;
    sh:class meta:AdCreativeSiteLinksSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/sourceUrl> ;
    sh:name "source url" ;
    sh:description "Contains the source URL for the sourcing specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/websiteMediaSpec> ;
    sh:name "website media spec" ;
    sh:description "Represents the website media specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSourcingSpec/websiteSummarySpec> ;
    sh:name "website summary spec" ;
    sh:description "Represents the website summary specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Promotion Metadata Spec
meta:AdCreativePromotionMetadataSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativePromotionMetadataSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/endDate> ;
    sh:name "end date" ;
    sh:description "Represents the end date of the promotion." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/id> ;
    sh:name "id" ;
    sh:description "Identifies the promotion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/promotionSource> ;
    sh:name "promotion source" ;
    sh:description "Identifies the source of the promotion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/promotionType> ;
    sh:name "promotion type" ;
    sh:description "Identifies the type of the promotion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/promotionValue> ;
    sh:name "promotion value" ;
    sh:description "Represents the value of the promotion." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/requiredCode> ;
    sh:name "required code" ;
    sh:description "Contains the code required for the promotion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePromotionMetadataSpec/startDate> ;
    sh:name "start date" ;
    sh:description "Represents the start date of the promotion." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Site Links Spec
meta:AdCreativeSiteLinksSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeSiteLinksSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/isDefaultingEligible> ;
    sh:name "is defaulting eligible" ;
    sh:description "Indicates whether the site link is eligible for defaulting." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/isSiteLinkSticky> ;
    sh:name "is site link sticky" ;
    sh:description "Indicates whether the site link is sticky." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkClassification> ;
    sh:name "site link classification" ;
    sh:description "Identifies the classification of the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkExtraMetadata> ;
    sh:name "site link extra metadata" ;
    sh:description "Contains extra metadata for the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkHash> ;
    sh:name "site link hash" ;
    sh:description "Identifies the site link by its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkId> ;
    sh:name "site link id" ;
    sh:description "Identifies the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkImageHash> ;
    sh:name "site link image hash" ;
    sh:description "Identifies the image associated with the site link by its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkImageUrl> ;
    sh:name "site link image url" ;
    sh:description "Contains the URL of the image associated with the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkLanguage> ;
    sh:name "site link language" ;
    sh:description "Identifies the language of the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkOriginalUrl> ;
    sh:name "site link original url" ;
    sh:description "Contains the original URL of the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkRecommendationType> ;
    sh:name "site link recommendation type" ;
    sh:description "Identifies the recommendation type for the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkTitle> ;
    sh:name "site link title" ;
    sh:description "Contains the title of the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkUrl> ;
    sh:name "site link url" ;
    sh:description "Contains the URL of the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkUrlAnchor> ;
    sh:name "site link url anchor" ;
    sh:description "Contains the anchor associated with the site link URL." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkUrlRecommenderType> ;
    sh:name "site link url recommender type" ;
    sh:description "Identifies the recommender type for the site link URL." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeSiteLinksSpec/siteLinkWebsiteDataSource> ;
    sh:name "site link website data source" ;
    sh:description "Identifies the website data source for the site link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Degrees Of Freedom Spec
meta:AdCreativeDegreesOfFreedomSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeDegreesOfFreedomSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/adHandleType> ;
    sh:name "ad handle type" ;
    sh:description "The ad handle type specified in the degrees-of-freedom specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/creativeFeaturesSpec> ;
    sh:name "creative features spec" ;
    sh:description "The creative-features specification within the degrees-of-freedom specification." ;
    sh:node meta:AdCreativeFeaturesSpecShape ;
    sh:class meta:AdCreativeFeaturesSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/degreesOfFreedomType> ;
    sh:name "degrees of freedom type" ;
    sh:description "The degrees-of-freedom type specified for the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/imageTransformationTypes> ;
    sh:name "image transformation types" ;
    sh:description "The image transformation types specified for the ad creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/multiMediaTransformationType> ;
    sh:name "multi media transformation type" ;
    sh:description "The multi-media transformation type specified for the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/storiesTransformationTypes> ;
    sh:name "stories transformation types" ;
    sh:description "The Stories transformation types specified for the ad creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/textTransformationTypes> ;
    sh:name "text transformation types" ;
    sh:description "The text transformation types specified for the ad creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDegreesOfFreedomSpec/videoTransformationTypes> ;
    sh:name "video transformation types" ;
    sh:description "The video transformation types specified for the ad creative." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Ad Creative Features Spec
meta:AdCreativeFeaturesSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeFeaturesSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/adaptToPlacement> ;
    sh:name "adapt to placement" ;
    sh:description "Details for the creative feature that adapts content to placement." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/addTextOverlay> ;
    sh:name "add text overlay" ;
    sh:description "Details for the creative feature that adds a text overlay." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/adsWithBenefits> ;
    sh:name "ads with benefits" ;
    sh:description "Details for the ads-with-benefits creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/advantagePlusCreative> ;
    sh:name "advantage plus creative" ;
    sh:description "Details for the Advantage+ creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/appHighlights> ;
    sh:name "app highlights" ;
    sh:description "Details for the app-highlights creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/audio> ;
    sh:name "audio" ;
    sh:description "Details for the audio creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/autoPromotionTag> ;
    sh:name "auto promotion tag" ;
    sh:description "Details for the automatic promotion tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/bizAi> ;
    sh:name "biz ai" ;
    sh:description "Details for the business AI creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/carouselToVideo> ;
    sh:name "carousel to video" ;
    sh:description "Details for the creative feature that converts a carousel to video." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/catalogFeedTag> ;
    sh:name "catalog feed tag" ;
    sh:description "Details for the catalog feed tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/creativeStickers> ;
    sh:name "creative stickers" ;
    sh:description "Details for the creative stickers feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/customizeProductRecommendation> ;
    sh:name "customize product recommendation" ;
    sh:description "Details for the creative feature that customizes product recommendations." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/cvTransformation> ;
    sh:name "cv transformation" ;
    sh:description "Details for the CV transformation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/descriptionAutomation> ;
    sh:name "description automation" ;
    sh:description "Details for the automated description creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/dhaOptimization> ;
    sh:name "dha optimization" ;
    sh:description "Details for the DHA optimization creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/dynamicCtaText> ;
    sh:name "dynamic cta text" ;
    sh:description "Details for the dynamic call-to-action text creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/dynamicPartnerContent> ;
    sh:name "dynamic partner content" ;
    sh:description "Details for the dynamic partner content creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/enableNcsTestimonials> ;
    sh:name "enable ncs testimonials" ;
    sh:description "Details for the creative feature that enables NCS testimonials." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/enhanceCta> ;
    sh:name "enhance cta" ;
    sh:description "Details for the call-to-action enhancement creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/fbFeedTag> ;
    sh:name "fb feed tag" ;
    sh:description "Details for the Facebook feed tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/fbReelsTag> ;
    sh:name "fb reels tag" ;
    sh:description "Details for the Facebook Reels tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/fbStoryTag> ;
    sh:name "fb story tag" ;
    sh:description "Details for the Facebook story tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/feedCaptionOptimization> ;
    sh:name "feed caption optimization" ;
    sh:description "Details for the feed caption optimization creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/generateCta> ;
    sh:name "generate cta" ;
    sh:description "Details for the call-to-action generation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/hidePrice> ;
    sh:name "hide price" ;
    sh:description "Details for the creative feature that hides the price." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/hyperlinkFormatting> ;
    sh:name "hyperlink formatting" ;
    sh:description "Details for the hyperlink formatting creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/igFeedTag> ;
    sh:name "ig feed tag" ;
    sh:description "Details for the Instagram feed tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/igGladosFeed> ;
    sh:name "ig glados feed" ;
    sh:description "Details for the Instagram GLaDOS feed creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/igReelsTag> ;
    sh:name "ig reels tag" ;
    sh:description "Details for the Instagram Reels tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/igStreamTag> ;
    sh:name "ig stream tag" ;
    sh:description "Details for the Instagram stream tag creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/igVideoNativeSubtitle> ;
    sh:name "ig video native subtitle" ;
    sh:description "Details for the Instagram video native subtitle creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageAnimation> ;
    sh:name "image animation" ;
    sh:description "Details for the image animation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageAutoCrop> ;
    sh:name "image auto crop" ;
    sh:description "Details for the automatic image cropping creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageBackgroundGen> ;
    sh:name "image background gen" ;
    sh:description "Details for the image background generation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageBanner> ;
    sh:name "image banner" ;
    sh:description "Details for the image banner creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageBrightnessAndContrast> ;
    sh:name "image brightness and contrast" ;
    sh:description "Details for the image brightness and contrast creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageEndCard> ;
    sh:name "image end card" ;
    sh:description "Details for the image end-card creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageEnhancement> ;
    sh:name "image enhancement" ;
    sh:description "Details for the image enhancement creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageTemplates> ;
    sh:name "image templates" ;
    sh:description "Details for the image templates creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageTextTranslation> ;
    sh:name "image text translation" ;
    sh:description "Details for the image text translation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageTouchups> ;
    sh:name "image touchups" ;
    sh:description "Details for the image touchup creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/imageUncrop> ;
    sh:name "image uncrop" ;
    sh:description "Details for the image uncropping creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/inlineComment> ;
    sh:name "inline comment" ;
    sh:description "Details for the inline comment creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/localStoreExtension> ;
    sh:name "local store extension" ;
    sh:description "Details for the local store extension creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/mediaLiquidityAnimatedImage> ;
    sh:name "media liquidity animated image" ;
    sh:description "Details for the animated image media liquidity creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/mediaOrder> ;
    sh:name "media order" ;
    sh:description "Details for the media ordering creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/mediaTypeAutomation> ;
    sh:name "media type automation" ;
    sh:description "Details for the media type automation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/multiCreativePostCarousel> ;
    sh:name "multi creative post carousel" ;
    sh:description "Details for the multi-creative post carousel feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/multiPhotoToVideo> ;
    sh:name "multi photo to video" ;
    sh:description "Details for the creative feature that converts multiple photos to video." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/musicGeneration> ;
    sh:name "music generation" ;
    sh:description "Details for the music generation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/pacGenaiRecomposition> ;
    sh:name "pac genai recomposition" ;
    sh:description "Details for the PAC generative AI recomposition creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/pacRecomposition> ;
    sh:name "pac recomposition" ;
    sh:description "Details for the PAC recomposition creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/pacRelaxation> ;
    sh:name "pac relaxation" ;
    sh:description "Details for the PAC relaxation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/productBrowsing> ;
    sh:name "product browsing" ;
    sh:description "Details for the product browsing creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/productExtensions> ;
    sh:name "product extensions" ;
    sh:description "Details for the product extensions creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/productMetadataAutomation> ;
    sh:name "product metadata automation" ;
    sh:description "Details for the product metadata automation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/productTags> ;
    sh:name "product tags" ;
    sh:description "Details for the product tags creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/profileCard> ;
    sh:name "profile card" ;
    sh:description "Details for the profile card creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/profileExtension> ;
    sh:name "profile extension" ;
    sh:description "Details for the profile extension creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/replaceMediaText> ;
    sh:name "replace media text" ;
    sh:description "Details for the creative feature that replaces media text." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/revealDetailsOverTime> ;
    sh:name "reveal details over time" ;
    sh:description "Details for the creative feature that reveals details over time." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/showDestinationBlurbs> ;
    sh:name "show destination blurbs" ;
    sh:description "Details for the creative feature that shows destination blurbs." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/showSummary> ;
    sh:name "show summary" ;
    sh:description "Details for the creative feature that shows a summary." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/siteExtensions> ;
    sh:name "site extensions" ;
    sh:description "Details for the site extensions creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/standardEnhancements> ;
    sh:name "standard enhancements" ;
    sh:description "Details for the standard enhancements creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/standardEnhancementsCatalog> ;
    sh:name "standard enhancements catalog" ;
    sh:description "Details for the standard catalog enhancements creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textExtractionForHeadline> ;
    sh:name "text extraction for headline" ;
    sh:description "Details for the text extraction feature for headlines." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textExtractionForTapTarget> ;
    sh:name "text extraction for tap target" ;
    sh:description "Details for the text extraction feature for tap targets." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textFormattingOptimization> ;
    sh:name "text formatting optimization" ;
    sh:description "Details for the text formatting optimization creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textGeneration> ;
    sh:name "text generation" ;
    sh:description "Details for the text generation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textOptimizations> ;
    sh:name "text optimizations" ;
    sh:description "Details for the text optimization creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textOverlayTranslation> ;
    sh:name "text overlay translation" ;
    sh:description "Details for the text overlay translation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/textTranslation> ;
    sh:name "text translation" ;
    sh:description "Details for the text translation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/translateVoiceover> ;
    sh:name "translate voiceover" ;
    sh:description "Details for the voiceover translation creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoAutoCrop> ;
    sh:name "video auto crop" ;
    sh:description "Details for the automatic video cropping creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoFiltering> ;
    sh:name "video filtering" ;
    sh:description "Details for the video filtering creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoHighlight> ;
    sh:name "video highlight" ;
    sh:description "Details for the video highlight creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoHighlights> ;
    sh:name "video highlights" ;
    sh:description "Details for the video highlights creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoToImage> ;
    sh:name "video to image" ;
    sh:description "Details for the creative feature that converts video to an image." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoUncrop> ;
    sh:name "video uncrop" ;
    sh:description "Details for the video uncropping creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/videoUncrop9x16To9x18> ;
    sh:name "video uncrop9x16to9x18" ;
    sh:description "Details for the creative feature that uncrops video from 9x16 to 9x18." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/waMmImageFiltering> ;
    sh:name "wa mm image filtering" ;
    sh:description "Details for the WhatsApp multimedia image filtering creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeaturesSpec/waMmTextTruncationLength> ;
    sh:name "wa mm text truncation length" ;
    sh:description "Details for the WhatsApp multimedia text truncation length creative feature." ;
    sh:node meta:AdCreativeFeatureDetailsShape ;
    sh:class meta:AdCreativeFeatureDetails ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Feature Details
meta:AdCreativeFeatureDetailsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeFeatureDetails ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureDetails/customizations> ;
    sh:name "customizations" ;
    sh:description "The customizations associated with the creative feature." ;
    sh:node meta:AdCreativeFeatureCustomizationsShape ;
    sh:class meta:AdCreativeFeatureCustomizations ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureDetails/enrollStatus> ;
    sh:name "enroll status" ;
    sh:description "The enrollment status of the creative feature." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Feature Customizations
meta:AdCreativeFeatureCustomizationsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeFeatureCustomizations ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/aspectRatioConfig> ;
    sh:name "aspect ratio config" ;
    sh:description "The aspect-ratio configuration for the creative feature customizations." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/backgroundColor> ;
    sh:name "background color" ;
    sh:description "The background color for the creative feature customizations." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/catalogFeedTagName> ;
    sh:name "catalog feed tag name" ;
    sh:description "The tag name for the catalog feed in the creative feature customizations." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/fbFeedTagName> ;
    sh:name "fb feed tag name" ;
    sh:description "The tag name for the Facebook Feed in the creative feature customizations." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/fbReelsTagName> ;
    sh:name "fb reels tag name" ;
    sh:description "The tag name for Facebook Reels in the creative feature customizations." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/fbStoryTagName> ;
    sh:name "fb story tag name" ;
    sh:description "The tag name for Facebook Stories in the creative feature customizations." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/fontName> ;
    sh:name "font name" ;
    sh:description "The font name used for the creative customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/igFeedTagName> ;
    sh:name "ig feed tag name" ;
    sh:description "The tag name associated with the Instagram feed customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/igReelsTagName> ;
    sh:name "ig reels tag name" ;
    sh:description "The tag name associated with the Instagram Reels customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/igStreamTagName> ;
    sh:name "ig stream tag name" ;
    sh:description "The tag name associated with the Instagram stream customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/imageCropStyle> ;
    sh:name "image crop style" ;
    sh:description "The crop style used for the image customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/peCarousel> ;
    sh:name "pe carousel" ;
    sh:description "The carousel customization details." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/recompositionType> ;
    sh:name "recomposition type" ;
    sh:description "The type of recomposition specified for the creative." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/showcaseCardDisplay> ;
    sh:name "showcase card display" ;
    sh:description "The display configuration for the showcase card." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/textExtraction> ;
    sh:name "text extraction" ;
    sh:description "The text extraction customization details." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFeatureCustomizations/textStyle> ;
    sh:name "text style" ;
    sh:description "The text style used for the creative customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Facebook Branded Content
meta:AdCreativeFacebookBrandedContentShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeFacebookBrandedContent ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFacebookBrandedContent/sharedToSponsorStatus> ;
    sh:name "shared to sponsor status" ;
    sh:description "The status of sharing the Facebook branded content with the sponsor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFacebookBrandedContent/sponsorPageId> ;
    sh:name "sponsor page id" ;
    sh:description "The identifier of the sponsor's Facebook page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFacebookBrandedContent/sponsorRelationship> ;
    sh:name "sponsor relationship" ;
    sh:description "The relationship with the sponsor specified for the Facebook branded content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Instagram Branded Content
meta:AdCreativeInstagramBrandedContentShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeInstagramBrandedContent ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeInstagramBrandedContent/sponsorId> ;
    sh:name "sponsor id" ;
    sh:description "The identifier of the sponsor associated with the Instagram branded content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Interactive Components Spec
meta:AdCreativeInteractiveComponentsSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeInteractiveComponentsSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeInteractiveComponentsSpec/childAttachments> ;
    sh:name "child attachments" ;
    sh:description "The child attachments associated with the interactive components specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeInteractiveComponentsSpec/components> ;
    sh:name "components" ;
    sh:description "Contains the interactive component objects associated with the specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Object Story Spec
meta:AdCreativeObjectStorySpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeObjectStorySpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/instagramUserId> ;
    sh:name "instagram user id" ;
    sh:description "Identifies the Instagram user associated with the object story." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/linkData> ;
    sh:name "link data" ;
    sh:description "Contains link data for the object story." ;
    sh:node meta:AdCreativeLinkDataShape ;
    sh:class meta:AdCreativeLinkData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/pageId> ;
    sh:name "page id" ;
    sh:description "Identifies the Page associated with the object story." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/photoData> ;
    sh:name "photo data" ;
    sh:description "Contains photo data for the object story." ;
    sh:node meta:AdCreativePhotoDataShape ;
    sh:class meta:AdCreativePhotoData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/productData> ;
    sh:name "product data" ;
    sh:description "Contains product data for the object story." ;
    sh:node meta:AdCreativeProductDataShape ;
    sh:class meta:AdCreativeProductData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/templateData> ;
    sh:name "template data" ;
    sh:description "Contains template link data for the object story." ;
    sh:node meta:AdCreativeLinkDataShape ;
    sh:class meta:AdCreativeLinkData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/textData> ;
    sh:name "text data" ;
    sh:description "Contains text data for the object story." ;
    sh:node meta:AdCreativeTextDataShape ;
    sh:class meta:AdCreativeTextData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/videoData> ;
    sh:name "video data" ;
    sh:description "Contains video data for the object story." ;
    sh:node meta:AdCreativeVideoDataShape ;
    sh:class meta:AdCreativeVideoData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeObjectStorySpec/whatsAppBusinessPhoneNumber> ;
    sh:name "whats app business phone number" ;
    sh:description "Identifies the WhatsApp Business phone number associated with the object story." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Link Data
meta:AdCreativeLinkDataShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/adContext> ;
    sh:name "ad context" ;
    sh:description "Represents contextual information associated with the ad." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/additionalImageIndex> ;
    sh:name "additional image index" ;
    sh:description "Identifies an additional image by its index." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/appLinkSpec> ;
    sh:name "app link spec" ;
    sh:description "Contains app-link details for the link creative." ;
    sh:node meta:AdCreativeLinkDataAppLinkSpecShape ;
    sh:class meta:AdCreativeLinkDataAppLinkSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/attachmentStyle> ;
    sh:name "attachment style" ;
    sh:description "Specifies the attachment style used by the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/automatedProductTags> ;
    sh:name "automated product tags" ;
    sh:description "Indicates whether automated product tags are used." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/boostedProductSetId> ;
    sh:name "boosted product set id" ;
    sh:description "Identifies the product set associated with the boosted creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/brandedContentSharedToSponsorStatus> ;
    sh:name "branded content shared to sponsor status" ;
    sh:description "Represents the sharing status of branded content with the sponsor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/brandedContentSponsorPageId> ;
    sh:name "branded content sponsor page id" ;
    sh:description "Identifies the Page serving as the branded-content sponsor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/callToAction> ;
    sh:name "call to action" ;
    sh:description "Contains the creative's call-to-action configuration." ;
    sh:node meta:AdCreativeLinkDataCallToActionShape ;
    sh:class meta:AdCreativeLinkDataCallToAction ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/caption> ;
    sh:name "caption" ;
    sh:description "Contains the caption associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/childAttachments> ;
    sh:name "child attachments" ;
    sh:description "Contains the child attachments included in the link creative." ;
    sh:node meta:AdCreativeLinkDataChildAttachmentShape ;
    sh:class meta:AdCreativeLinkDataChildAttachment ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/collectionThumbnails> ;
    sh:name "collection thumbnails" ;
    sh:description "Contains thumbnail information for the collection." ;
    sh:node meta:AdCreativeCollectionThumbnailInfoShape ;
    sh:class meta:AdCreativeCollectionThumbnailInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/customizationRulesSpec> ;
    sh:name "customization rules spec" ;
    sh:description "Contains the rules used to customize the creative." ;
    sh:node meta:AdCustomizationRuleSpecShape ;
    sh:class meta:AdCustomizationRuleSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/description> ;
    sh:name "description" ;
    sh:description "Contains the description associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/eventId> ;
    sh:name "event id" ;
    sh:description "Identifies the event associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/forceSingleLink> ;
    sh:name "force single link" ;
    sh:description "Indicates whether the creative is constrained to a single link." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/formatOption> ;
    sh:name "format option" ;
    sh:description "Specifies the link creative format, such as a carousel, collection video, or single image." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "carousel_ar_effects" "carousel_images_multi_items" "carousel_images_single_item" "carousel_slideshows" "collection_video" "single_image" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/imageCrops> ;
    sh:name "image crops" ;
    sh:description "Contains crop settings for the creative image." ;
    sh:node meta:AdsImageCropsShape ;
    sh:class meta:AdsImageCrops ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/imageHash> ;
    sh:name "image hash" ;
    sh:description "Identifies the creative image by its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/imageLayerSpecs> ;
    sh:name "image layer specs" ;
    sh:description "Contains the image layers applied to the creative." ;
    sh:node meta:AdCreativeLinkDataImageLayerSpecShape ;
    sh:class meta:AdCreativeLinkDataImageLayerSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/imageOverlaySpec> ;
    sh:name "image overlay spec" ;
    sh:description "Contains the overlay configuration for the creative image." ;
    sh:node meta:AdCreativeLinkDataImageOverlaySpecShape ;
    sh:class meta:AdCreativeLinkDataImageOverlaySpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/isLocalExpansion> ;
    sh:name "is local expansion" ;
    sh:description "Indicates whether the creative represents a local expansion." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/link> ;
    sh:name "link" ;
    sh:description "Contains the destination link for the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/message> ;
    sh:name "message" ;
    sh:description "Contains the message associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/multiShareEndCard> ;
    sh:name "multi share end card" ;
    sh:description "Indicates whether a multi-share end card is used." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/multiShareOptimized> ;
    sh:name "multi share optimized" ;
    sh:description "Indicates whether the multi-share creative is optimized." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/name> ;
    sh:name "name" ;
    sh:description "Contains the name associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/offerId> ;
    sh:name "offer id" ;
    sh:description "Identifies the offer associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/pageWelcomeMessage> ;
    sh:name "page welcome message" ;
    sh:description "Contains the welcome message associated with the Page experience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/picture> ;
    sh:name "picture" ;
    sh:description "Contains the picture associated with the link creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/postClickConfiguration> ;
    sh:name "post click configuration" ;
    sh:description "Contains the configuration for the experience after a click." ;
    sh:node meta:AdCreativePostClickConfigurationShape ;
    sh:class meta:AdCreativePostClickConfiguration ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/preferredImageTags> ;
    sh:name "preferred image tags" ;
    sh:description "Contains preferred tags for images used by the creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/preferredVideoTags> ;
    sh:name "preferred video tags" ;
    sh:description "Contains preferred tags for videos used by the creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/retailerItemIds> ;
    sh:name "retailer item ids" ;
    sh:description "Contains the retailer item identifiers associated with the creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/showMultipleImages> ;
    sh:name "show multiple images" ;
    sh:description "Indicates whether multiple images are shown." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/smartPseEnabled> ;
    sh:name "smart pse enabled" ;
    sh:description "Indicates whether Smart PSE is enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/staticFallbackSpec> ;
    sh:name "static fallback spec" ;
    sh:description "Contains the static fallback configuration for the creative." ;
    sh:node meta:AdCreativeStaticFallbackSpecShape ;
    sh:class meta:AdCreativeStaticFallbackSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkData/useFlexibleImageAspectRatio> ;
    sh:name "use flexible image aspect ratio" ;
    sh:description "Indicates whether a flexible image aspect ratio is used." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Link Data App Link Spec
meta:AdCreativeLinkDataAppLinkSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkDataAppLinkSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataAppLinkSpec/android> ;
    sh:name "android" ;
    sh:description "Contains app-link entries for Android." ;
    sh:node meta:AndroidAppLinkShape ;
    sh:class meta:AndroidAppLink ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataAppLinkSpec/ios> ;
    sh:name "ios" ;
    sh:description "Contains app-link entries for iOS." ;
    sh:node meta:IosAppLinkShape ;
    sh:class meta:IosAppLink ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataAppLinkSpec/ipad> ;
    sh:name "ipad" ;
    sh:description "Contains app-link entries for iPad." ;
    sh:node meta:IosAppLinkShape ;
    sh:class meta:IosAppLink ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataAppLinkSpec/iphone> ;
    sh:name "iphone" ;
    sh:description "Contains app-link entries for iPhone." ;
    sh:node meta:IosAppLinkShape ;
    sh:class meta:IosAppLink ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] .

# Shape for Android App Link
meta:AndroidAppLinkShape a sh:NodeShape ;
  sh:targetClass meta:AndroidAppLink ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AndroidAppLink/appName> ;
    sh:name "app name" ;
    sh:description "Represents the name of the Android application." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AndroidAppLink/class> ;
    sh:name "class" ;
    sh:description "Represents the Android application class." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AndroidAppLink/package> ;
    sh:name "package" ;
    sh:description "Represents the Android application package." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AndroidAppLink/url> ;
    sh:name "url" ;
    sh:description "Represents the URL associated with the Android application link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ios App Link
meta:IosAppLinkShape a sh:NodeShape ;
  sh:targetClass meta:IosAppLink ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IosAppLink/appName> ;
    sh:name "app name" ;
    sh:description "Represents the name of the iOS app." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IosAppLink/appStoreId> ;
    sh:name "app store id" ;
    sh:description "Identifies the iOS app in the App Store." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.IosAppLink/url> ;
    sh:name "url" ;
    sh:description "Provides the URL associated with the iOS app link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Link Data Child Attachment
meta:AdCreativeLinkDataChildAttachmentShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkDataChildAttachment ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/androidUrl> ;
    sh:name "android url" ;
    sh:description "Contains the URL associated with the attachment's Android destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/callToAction> ;
    sh:name "call to action" ;
    sh:description "Contains the call-to-action configuration for the child attachment." ;
    sh:node meta:AdCreativeLinkDataCallToActionShape ;
    sh:class meta:AdCreativeLinkDataCallToAction ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/caption> ;
    sh:name "caption" ;
    sh:description "Contains the caption associated with the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/description> ;
    sh:name "description" ;
    sh:description "Contains the description associated with the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/igMediaId> ;
    sh:name "ig media id" ;
    sh:description "Identifies the Instagram media associated with the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/imageCrops> ;
    sh:name "image crops" ;
    sh:description "Contains crop settings for the child attachment image." ;
    sh:node meta:AdsImageCropsShape ;
    sh:class meta:AdsImageCrops ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/imageHash> ;
    sh:name "image hash" ;
    sh:description "Identifies the child attachment image by its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/iosUrl> ;
    sh:name "ios url" ;
    sh:description "Contains the URL associated with the attachment's iOS destination." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/link> ;
    sh:name "link" ;
    sh:description "Contains the destination link for the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/marketingMessageButtons> ;
    sh:name "marketing message buttons" ;
    sh:description "Contains the marketing message button objects associated with the child attachment." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/name> ;
    sh:name "name" ;
    sh:description "Contains the name associated with the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/picture> ;
    sh:name "picture" ;
    sh:description "Contains the picture associated with the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/placeData> ;
    sh:name "place data" ;
    sh:description "Contains place information associated with the child attachment." ;
    sh:node meta:AdCreativePlaceDataShape ;
    sh:class meta:AdCreativePlaceData ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/staticCard> ;
    sh:name "static card" ;
    sh:description "Indicates whether the child attachment is a static card." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataChildAttachment/videoId> ;
    sh:name "video id" ;
    sh:description "Identifies the video associated with the child attachment." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Place Data
meta:AdCreativePlaceDataShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativePlaceData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlaceData/addressString> ;
    sh:name "address string" ;
    sh:description "Contains the address associated with the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlaceData/label> ;
    sh:name "label" ;
    sh:description "Contains the label associated with the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlaceData/latitude> ;
    sh:name "latitude" ;
    sh:description "Represents the latitude of the place." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlaceData/locationSourceId> ;
    sh:name "location source id" ;
    sh:description "Identifies the source location for the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlaceData/longitude> ;
    sh:name "longitude" ;
    sh:description "Represents the longitude of the place." ;
    sh:datatype xsd:double ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlaceData/type> ;
    sh:name "type" ;
    sh:description "Identifies the type of the place." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Collection Thumbnail Info
meta:AdCreativeCollectionThumbnailInfoShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeCollectionThumbnailInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeCollectionThumbnailInfo/elementChildIndex> ;
    sh:name "element child index" ;
    sh:description "The child index of the collection element represented by the thumbnail." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeCollectionThumbnailInfo/elementCrops> ;
    sh:name "element crops" ;
    sh:description "Crop information for the collection element represented by the thumbnail." ;
    sh:node meta:AdsImageCropsShape ;
    sh:class meta:AdsImageCrops ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeCollectionThumbnailInfo/elementId> ;
    sh:name "element id" ;
    sh:description "The identifier of the collection element represented by the thumbnail." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Customization Rule Spec
meta:AdCustomizationRuleSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCustomizationRuleSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/caption> ;
    sh:name "caption" ;
    sh:description "Provides the caption used by the customization rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/customizationSpec> ;
    sh:name "customization spec" ;
    sh:description "Contains the customization specification for the rule." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/description> ;
    sh:name "description" ;
    sh:description "Provides the description of the customization rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/imageHash> ;
    sh:name "image hash" ;
    sh:description "Identifies the image used by the customization rule through its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/link> ;
    sh:name "link" ;
    sh:description "Provides the link used by the customization rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/message> ;
    sh:name "message" ;
    sh:description "Provides the message used by the customization rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/name> ;
    sh:name "name" ;
    sh:description "Provides the name of the customization rule." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/priority> ;
    sh:name "priority" ;
    sh:description "Specifies the priority assigned to the customization rule." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/templateUrlSpec> ;
    sh:name "template url spec" ;
    sh:description "Provides the template URL specification used by the customization rule." ;
    sh:node meta:AdCreativeTemplateURLSpecShape ;
    sh:class meta:AdCreativeTemplateURLSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCustomizationRuleSpec/videoId> ;
    sh:name "video id" ;
    sh:description "Identifies the video used by the customization rule." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Template URLSpec
meta:AdCreativeTemplateURLSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeTemplateURLSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/android> ;
    sh:name "android" ;
    sh:description "Contains template URL configuration for Android." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/config> ;
    sh:name "config" ;
    sh:description "Contains configuration for the template URL specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/ios> ;
    sh:name "ios" ;
    sh:description "Contains template URL configuration for iOS." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/ipad> ;
    sh:name "ipad" ;
    sh:description "Contains template URL configuration for iPad." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/iphone> ;
    sh:name "iphone" ;
    sh:description "Contains template URL configuration for iPhone." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/web> ;
    sh:name "web" ;
    sh:description "Contains template URL configuration for the web." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTemplateURLSpec/windowsPhone> ;
    sh:name "windows phone" ;
    sh:description "Contains template URL configuration for Windows Phone." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Link Data Image Layer Spec
meta:AdCreativeLinkDataImageLayerSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkDataImageLayerSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/blendingMode> ;
    sh:name "blending mode" ;
    sh:description "Specifies how the image layer blends with underlying content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "lighten" "multiply" "normal" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/content> ;
    sh:name "content" ;
    sh:description "Contains the content of the image layer." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/frameAutoShowEnrollStatus> ;
    sh:name "frame auto show enroll status" ;
    sh:description "Represents the enrollment status for automatically showing the frame." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/frameImageHash> ;
    sh:name "frame image hash" ;
    sh:description "Identifies the image used for the frame by its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/frameSource> ;
    sh:name "frame source" ;
    sh:description "Specifies the source of the frame, including a custom source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "custom" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/imageSource> ;
    sh:name "image source" ;
    sh:description "Specifies the source of the layer image, including a catalog source." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "catalog" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/layerType> ;
    sh:name "layer type" ;
    sh:description "Specifies whether the layer is an image, frame overlay, or text overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "frame_overlay" "image" "text_overlay" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/opacity> ;
    sh:name "opacity" ;
    sh:description "Specifies the opacity of the image layer." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/overlayPosition> ;
    sh:name "overlay position" ;
    sh:description "Specifies the position of the overlay within the image." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "bottom" "bottom_left" "bottom_right" "center" "left" "right" "top" "top_left" "top_right" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/overlayShape> ;
    sh:name "overlay shape" ;
    sh:description "Specifies the shape of the overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "circle" "none" "pill" "rectangle" "triangle" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/scale> ;
    sh:name "scale" ;
    sh:description "Specifies the scale of the image layer." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/shapeColor> ;
    sh:name "shape color" ;
    sh:description "Specifies the color of the overlay shape." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/textColor> ;
    sh:name "text color" ;
    sh:description "Specifies the color of text in the image layer." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageLayerSpec/textFont> ;
    sh:name "text font" ;
    sh:description "Specifies the font used for text in the image layer." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "droid_serif_regular" "lato_regular" "noto_sans_regular" "nunito_sans_bold" "open_sans_bold" "open_sans_condensed_bold" "pt_serif_bold" "roboto_condensed_regular" "roboto_medium" ) ;
  ] .

# Shape for Ad Creative Link Data Image Overlay Spec
meta:AdCreativeLinkDataImageOverlaySpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeLinkDataImageOverlaySpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/customTextType> ;
    sh:name "custom text type" ;
    sh:description "Specifies the predefined type of custom overlay text, such as sale or free shipping." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "free_shipping" "popular" "sale" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/floatWithMargin> ;
    sh:name "float with margin" ;
    sh:description "Indicates whether the image overlay floats with a margin." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/overlayTemplate> ;
    sh:name "overlay template" ;
    sh:description "Specifies the template used for the image overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "circle_with_text" "pill_with_text" "triangle_with_text" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/position> ;
    sh:name "position" ;
    sh:description "Specifies the position of the image overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "bottom_left" "bottom_right" "top_left" "top_right" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/textFont> ;
    sh:name "text font" ;
    sh:description "Specifies the font used for text in the image overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "droid_serif_regular" "dynads_hybrid_bold" "lato_regular" "noto_sans_regular" "nunito_sans_bold" "open_sans_bold" "open_sans_condensed_bold" "pt_serif_bold" "roboto_condensed_regular" "roboto_medium" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/textTemplateTags> ;
    sh:name "text template tags" ;
    sh:description "Contains tags used by the overlay text template." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/textType> ;
    sh:name "text type" ;
    sh:description "Specifies the type of text displayed by the image overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "automated_personalize" "custom" "disclaimer" "from_price" "guest_rating" "percentage_off" "price" "star_rating" "strikethrough_price" "sustainable" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeLinkDataImageOverlaySpec/themeColor> ;
    sh:name "theme color" ;
    sh:description "Specifies the background and text color combination for the image overlay." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
    sh:in ( "background_000000_text_ffffff" "background_0090ff_text_ffffff" "background_00af4c_text_ffffff" "background_595959_text_ffffff" "background_755dde_text_ffffff" "background_e50900_text_ffffff" "background_f23474_text_ffffff" "background_f78400_text_ffffff" "background_ffffff_text_000000" "background_ffffff_text_007ad0" "background_ffffff_text_009c2a" "background_ffffff_text_646464" "background_ffffff_text_755dde" "background_ffffff_text_c91b00" "background_ffffff_text_f23474" "background_ffffff_text_f78400" ) ;
  ] .

# Shape for Ad Creative Post Click Configuration
meta:AdCreativePostClickConfigurationShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativePostClickConfiguration ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePostClickConfiguration/postClickItemDescription> ;
    sh:name "post click item description" ;
    sh:description "Contains the description shown for the post-click item." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePostClickConfiguration/postClickItemHeadline> ;
    sh:name "post click item headline" ;
    sh:description "Contains the headline shown for the post-click item." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Static Fallback Spec
meta:AdCreativeStaticFallbackSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeStaticFallbackSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeStaticFallbackSpec/callToAction> ;
    sh:name "call to action" ;
    sh:description "Contains the call to action for the static fallback." ;
    sh:node meta:AdCreativeLinkDataCallToActionShape ;
    sh:class meta:AdCreativeLinkDataCallToAction ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeStaticFallbackSpec/description> ;
    sh:name "description" ;
    sh:description "Contains the description for the static fallback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeStaticFallbackSpec/imageHash> ;
    sh:name "image hash" ;
    sh:description "Identifies the image used by the static fallback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeStaticFallbackSpec/link> ;
    sh:name "link" ;
    sh:description "Contains the link for the static fallback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeStaticFallbackSpec/message> ;
    sh:name "message" ;
    sh:description "Provides the message for a static fallback specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeStaticFallbackSpec/name> ;
    sh:name "name" ;
    sh:description "Provides the name of a static fallback specification." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Photo Data
meta:AdCreativePhotoDataShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativePhotoData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePhotoData/brandedContentSharedToSponsorStatus> ;
    sh:name "branded content shared to sponsor status" ;
    sh:description "Indicates the branded-content sharing status for the sponsor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePhotoData/brandedContentSponsorPageId> ;
    sh:name "branded content sponsor page id" ;
    sh:description "Identifies the Page of the branded-content sponsor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePhotoData/caption> ;
    sh:name "caption" ;
    sh:description "Contains the caption associated with the photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePhotoData/imageHash> ;
    sh:name "image hash" ;
    sh:description "Identifies the image associated with the photo data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePhotoData/pageWelcomeMessage> ;
    sh:name "page welcome message" ;
    sh:description "Contains the Page welcome message associated with the photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePhotoData/url> ;
    sh:name "url" ;
    sh:description "Contains the URL associated with the photo." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Product Data
meta:AdCreativeProductDataShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeProductData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeProductData/productId> ;
    sh:name "product id" ;
    sh:description "Identifies the product associated with the product data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeProductData/productSource> ;
    sh:name "product source" ;
    sh:description "Identifies the source of the product data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Text Data
meta:AdCreativeTextDataShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeTextData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeTextData/message> ;
    sh:name "message" ;
    sh:description "Provides the message in the text creative data." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Video Data
meta:AdCreativeVideoDataShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeVideoData ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/additionalImageIndex> ;
    sh:name "additional image index" ;
    sh:description "Identifies an additional image index associated with the video creative data." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/brandedContentSharedToSponsorStatus> ;
    sh:name "branded content shared to sponsor status" ;
    sh:description "Indicates the branded content sharing status for the sponsor." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/brandedContentSponsorPageId> ;
    sh:name "branded content sponsor page id" ;
    sh:description "Identifies the sponsor page associated with the branded content." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/callToAction> ;
    sh:name "call to action" ;
    sh:description "Provides the call to action for the video creative." ;
    sh:node meta:AdCreativeLinkDataCallToActionShape ;
    sh:class meta:AdCreativeLinkDataCallToAction ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/collectionThumbnails> ;
    sh:name "collection thumbnails" ;
    sh:description "Provides thumbnail information for the collection associated with the video creative." ;
    sh:node meta:AdCreativeCollectionThumbnailInfoShape ;
    sh:class meta:AdCreativeCollectionThumbnailInfo ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/customizationRulesSpec> ;
    sh:name "customization rules spec" ;
    sh:description "Provides customization rules for the video creative." ;
    sh:node meta:AdCustomizationRuleSpecShape ;
    sh:class meta:AdCustomizationRuleSpec ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/imageHash> ;
    sh:name "image hash" ;
    sh:description "Identifies the image associated with the video creative by its hash." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/imageUrl> ;
    sh:name "image url" ;
    sh:description "Provides the URL of the image associated with the video creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/linkDescription> ;
    sh:name "link description" ;
    sh:description "Provides the description associated with the creative link." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/message> ;
    sh:name "message" ;
    sh:description "Provides the message for the video creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/offerId> ;
    sh:name "offer id" ;
    sh:description "Identifies the offer associated with the video creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/pageWelcomeMessage> ;
    sh:name "page welcome message" ;
    sh:description "Provides the welcome message associated with the page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/postClickConfiguration> ;
    sh:name "post click configuration" ;
    sh:description "Provides configuration for the experience after a click on the video creative." ;
    sh:node meta:AdCreativePostClickConfigurationShape ;
    sh:class meta:AdCreativePostClickConfiguration ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/retailerItemIds> ;
    sh:name "retailer item ids" ;
    sh:description "Identifies retailer items associated with the video creative." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/targeting> ;
    sh:name "targeting" ;
    sh:description "Provides targeting information for the video creative." ;
    sh:node meta:TargetingShape ;
    sh:class meta:Targeting ;
    sh:nodeKind sh:BlankNodeOrIRI ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/title> ;
    sh:name "title" ;
    sh:description "Provides the title of the video creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeVideoData/videoId> ;
    sh:name "video id" ;
    sh:description "Identifies the video associated with the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Omnichannel Link Spec
meta:AdCreativeOmnichannelLinkSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeOmnichannelLinkSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeOmnichannelLinkSpec/app> ;
    sh:name "app" ;
    sh:description "Represents the app destination in the omnichannel link specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeOmnichannelLinkSpec/web> ;
    sh:name "web" ;
    sh:description "Represents the web destination in the omnichannel link specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Platform Customization
meta:AdCreativePlatformCustomizationShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativePlatformCustomization ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePlatformCustomization/instagram> ;
    sh:name "instagram" ;
    sh:description "Represents the Instagram customization for the creative." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Portrait Customizations
meta:AdCreativePortraitCustomizationsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativePortraitCustomizations ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePortraitCustomizations/carouselDeliveryMode> ;
    sh:name "carousel delivery mode" ;
    sh:description "Identifies the delivery mode for the portrait carousel customization." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativePortraitCustomizations/specifications> ;
    sh:name "specifications" ;
    sh:description "Represents the specifications for the portrait customization." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Recommender Settings
meta:AdCreativeRecommenderSettingsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeRecommenderSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRecommenderSettings/preferredEvents> ;
    sh:name "preferred events" ;
    sh:description "Represents the events preferred by the recommender settings." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRecommenderSettings/productSalesChannel> ;
    sh:name "product sales channel" ;
    sh:description "Identifies the product sales channel used by the recommender settings." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Regional Regulation Disclaimer
meta:AdCreativeRegionalRegulationDisclaimerShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeRegionalRegulationDisclaimer ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRegionalRegulationDisclaimer/australiaFinserv> ;
    sh:name "australia finserv" ;
    sh:description "Represents the Australia financial-services regulatory disclaimer." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRegionalRegulationDisclaimer/indiaFinserv> ;
    sh:name "india finserv" ;
    sh:description "Represents the India financial-services regulatory disclaimer." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRegionalRegulationDisclaimer/singaporeUniversal> ;
    sh:name "singapore universal" ;
    sh:description "Represents the Singapore universal regulatory disclaimer." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRegionalRegulationDisclaimer/taiwanFinserv> ;
    sh:name "taiwan finserv" ;
    sh:description "Represents the Taiwan financial-services regulatory disclaimer." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeRegionalRegulationDisclaimer/taiwanUniversal> ;
    sh:name "taiwan universal" ;
    sh:description "Represents the Taiwan universal regulatory disclaimer." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Destination Spec
meta:AdCreativeDestinationSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeDestinationSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDestinationSpec/destinationType> ;
    sh:name "destination type" ;
    sh:description "The type of destination specified for the ad creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDestinationSpec/nativeCommerceExperience> ;
    sh:name "native commerce experience" ;
    sh:description "The native commerce experience specified as a destination." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeDestinationSpec/website> ;
    sh:name "website" ;
    sh:description "The website specified as a destination." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Format Transformation Spec
meta:AdCreativeFormatTransformationSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeFormatTransformationSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFormatTransformationSpec/customizations> ;
    sh:name "customizations" ;
    sh:description "The customizations associated with the format transformation." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFormatTransformationSpec/dataSource> ;
    sh:name "data source" ;
    sh:description "The data source associated with the format transformation." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeFormatTransformationSpec/format> ;
    sh:name "format" ;
    sh:description "The format specified for the format transformation." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Media Sourcing Spec
meta:AdCreativeMediaSourcingSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeMediaSourcingSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/bodies> ;
    sh:name "bodies" ;
    sh:description "Represents the body content supplied for media sourcing." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/descriptions> ;
    sh:name "descriptions" ;
    sh:description "Represents the descriptions supplied for media sourcing." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/destinations> ;
    sh:name "destinations" ;
    sh:description "Represents the destinations supplied for media sourcing." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/images> ;
    sh:name "images" ;
    sh:description "Represents the images supplied for media sourcing." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/pushMetadataIds> ;
    sh:name "push metadata ids" ;
    sh:description "Identifies the push metadata associated with media sourcing." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/relatedMedia> ;
    sh:name "related media" ;
    sh:description "Represents media related to the media sourcing specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/titles> ;
    sh:name "titles" ;
    sh:description "Represents the titles supplied for media sourcing." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMediaSourcingSpec/videos> ;
    sh:name "videos" ;
    sh:description "Represents the videos supplied for media sourcing." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Marketing Message Structured Spec
meta:AdCreativeMarketingMessageStructuredSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeMarketingMessageStructuredSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/assetCustomization> ;
    sh:name "asset customization" ;
    sh:description "Contains asset customization details for the marketing message." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/autoreply> ;
    sh:name "autoreply" ;
    sh:description "Contains autoreply details for the marketing message." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/buttons> ;
    sh:name "buttons" ;
    sh:description "Represents the buttons included in the structured marketing message." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/conversationTemplateId> ;
    sh:name "conversation template id" ;
    sh:description "Identifies the conversation template associated with the structured marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/footer> ;
    sh:name "footer" ;
    sh:description "Contains the footer text for the structured marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/greeting> ;
    sh:name "greeting" ;
    sh:description "Contains the greeting text for the structured marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/isOptimizedText> ;
    sh:name "is optimized text" ;
    sh:description "Indicates whether the structured marketing message uses optimized text." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/language> ;
    sh:name "language" ;
    sh:description "Identifies the language of the structured marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/offer> ;
    sh:name "offer" ;
    sh:description "Represents the offer included in the structured marketing message." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/referencedAdgroupId> ;
    sh:name "referenced adgroup id" ;
    sh:description "Identifies the ad group referenced by the structured marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeMarketingMessageStructuredSpec/whatsAppBusinessPhoneNumberId> ;
    sh:name "whats app business phone number id" ;
    sh:description "Identifies the WhatsApp Business phone number associated with the structured marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Product Suggestion Settings
meta:AdCreativeProductSuggestionSettingsShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeProductSuggestionSettings ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeProductSuggestionSettings/enabled> ;
    sh:name "enabled" ;
    sh:description "Indicates whether product suggestions are enabled." ;
    sh:datatype xsd:boolean ;
    sh:maxCount 1 ;
  ] .

# Shape for Ad Creative Asset Groups Spec
meta:AdCreativeAssetGroupsSpecShape a sh:NodeShape ;
  sh:targetClass meta:AdCreativeAssetGroupsSpec ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeAssetGroupsSpec/groups> ;
    sh:name "groups" ;
    sh:description "The asset groups included in the asset-groups specification." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeAssetGroupsSpec/origin> ;
    sh:name "origin" ;
    sh:description "The origin specified for the asset groups." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdCreativeAssetGroupsSpec/origins> ;
    sh:name "origins" ;
    sh:description "The origins specified for the asset groups." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Adgroup Issues Info
meta:AdgroupIssuesInfoShape a sh:NodeShape ;
  sh:targetClass meta:AdgroupIssuesInfo ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupIssuesInfo/errorCode> ;
    sh:name "error code" ;
    sh:description "Provides the code identifying the ad group issue." ;
    sh:datatype xsd:int ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupIssuesInfo/errorMessage> ;
    sh:name "error message" ;
    sh:description "Provides the message describing the ad group issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupIssuesInfo/errorSummary> ;
    sh:name "error summary" ;
    sh:description "Provides a summary of the ad group issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupIssuesInfo/errorType> ;
    sh:name "error type" ;
    sh:description "Identifies the type of ad group issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupIssuesInfo/level> ;
    sh:name "level" ;
    sh:description "Indicates the level associated with the ad group issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupIssuesInfo/mid> ;
    sh:name "mid" ;
    sh:description "Provides the identifier associated with the ad group issue." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Shape for Placement
meta:PlacementShape a sh:NodeShape ;
  sh:targetClass meta:Placement ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/audienceNetworkPositions> ;
    sh:name "audience network positions" ;
    sh:description "Represents the selected Audience Network positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/devicePlatforms> ;
    sh:name "device platforms" ;
    sh:description "Represents the device platforms selected for the placement, including desktop or mobile." ;
    sh:datatype xsd:string ;
    sh:in ( "desktop" "mobile" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveAudienceNetworkPositions> ;
    sh:name "effective audience network positions" ;
    sh:description "Represents the effective Audience Network positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveDevicePlatforms> ;
    sh:name "effective device platforms" ;
    sh:description "Represents the effective device platforms for the placement, including desktop or mobile." ;
    sh:datatype xsd:string ;
    sh:in ( "desktop" "mobile" ) ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveFacebookPositions> ;
    sh:name "effective facebook positions" ;
    sh:description "Represents the effective Facebook positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveInstagramPositions> ;
    sh:name "effective instagram positions" ;
    sh:description "Represents the effective Instagram positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveMessengerPositions> ;
    sh:name "effective messenger positions" ;
    sh:description "Represents the effective Messenger positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveOculusPositions> ;
    sh:name "effective oculus positions" ;
    sh:description "Represents the effective Oculus positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectivePublisherPlatforms> ;
    sh:name "effective publisher platforms" ;
    sh:description "Represents the effective publisher platforms for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveThreadsPositions> ;
    sh:name "effective threads positions" ;
    sh:description "Represents the effective Threads positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/effectiveWhatsappPositions> ;
    sh:name "effective whatsapp positions" ;
    sh:description "Represents the effective WhatsApp positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/facebookPositions> ;
    sh:name "facebook positions" ;
    sh:description "Represents the selected Facebook positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/instagramPositions> ;
    sh:name "instagram positions" ;
    sh:description "Represents the selected Instagram positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/messengerPositions> ;
    sh:name "messenger positions" ;
    sh:description "Represents the selected Messenger positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/oculusPositions> ;
    sh:name "oculus positions" ;
    sh:description "Represents the selected Oculus positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/publisherPlatforms> ;
    sh:name "publisher platforms" ;
    sh:description "Represents the publisher platforms selected for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/threadsPositions> ;
    sh:name "threads positions" ;
    sh:description "Represents the selected Threads positions for the placement." ;
    sh:datatype xsd:string ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.Placement/whatsappPositions> ;
    sh:name "whatsapp positions" ;
    sh:description "Represents the selected WhatsApp positions for the placement." ;
    sh:datatype xsd:string ;
  ] .

# Shape for Tracking And Conversion With Defaults
meta:TrackingAndConversionWithDefaultsShape a sh:NodeShape ;
  sh:targetClass meta:TrackingAndConversionWithDefaults ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrackingAndConversionWithDefaults/customConversion> ;
    sh:name "custom conversion" ;
    sh:description "Represents the custom conversion configuration associated with tracking and conversion defaults." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrackingAndConversionWithDefaults/customTracking> ;
    sh:name "custom tracking" ;
    sh:description "Represents the custom tracking configuration associated with tracking and conversion defaults." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrackingAndConversionWithDefaults/defaultConversion> ;
    sh:name "default conversion" ;
    sh:description "Represents the default conversion configuration associated with tracking and conversion defaults." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.TrackingAndConversionWithDefaults/defaultTracking> ;
    sh:name "default tracking" ;
    sh:description "Represents the default tracking configuration associated with tracking and conversion defaults." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] .

# Shape for Ads Action Stats
meta:AdsActionStatsShape a sh:NodeShape ;
  sh:targetClass meta:AdsActionStats ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dClick> ;
    sh:name "1d click" ;
    sh:description "A statistic for actions attributed to clicks within a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dClickAllConversions> ;
    sh:name "1d click all conversions" ;
    sh:description "A statistic for all conversions attributed to clicks within a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dClickFirstConversion> ;
    sh:name "1d click first conversion" ;
    sh:description "A statistic for first conversions attributed to clicks within a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dEv> ;
    sh:name "1d ev" ;
    sh:description "A statistic for event-related results attributed within a one-day window after a click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dEvAllConversions> ;
    sh:name "1d ev all conversions" ;
    sh:description "A statistic for all event-related conversions attributed within a one-day window after a click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dEvFirstConversion> ;
    sh:name "1d ev first conversion" ;
    sh:description "A statistic for first event-related conversions attributed within a one-day window after a click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dPassback> ;
    sh:name "1d passback" ;
    sh:description "A statistic for passback activity associated with a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dSequenced> ;
    sh:name "1d sequenced" ;
    sh:description "A statistic for sequenced activity associated with a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dView> ;
    sh:name "1d view" ;
    sh:description "A statistic for actions attributed to views within a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dViewAllConversions> ;
    sh:name "1d view all conversions" ;
    sh:description "A statistic for all conversions attributed to views within a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/1dViewFirstConversion> ;
    sh:name "1d view first conversion" ;
    sh:description "A statistic for first conversions attributed to views within a one-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dClick> ;
    sh:name "28d click" ;
    sh:description "A statistic for actions attributed to clicks within a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dClickAllConversions> ;
    sh:name "28d click all conversions" ;
    sh:description "A statistic for all conversions attributed to clicks within a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dClickFirstConversion> ;
    sh:name "28d click first conversion" ;
    sh:description "A statistic for first conversions attributed to clicks within a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dPassback> ;
    sh:name "28d passback" ;
    sh:description "A statistic for passback activity associated with a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dSequenced> ;
    sh:name "28d sequenced" ;
    sh:description "A statistic for sequenced activity associated with a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dView> ;
    sh:name "28d view" ;
    sh:description "A statistic for actions attributed to views within a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dViewAllConversions> ;
    sh:name "28d view all conversions" ;
    sh:description "A statistic for all conversions attributed to views within a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/28dViewFirstConversion> ;
    sh:name "28d view first conversion" ;
    sh:description "A statistic for first conversions attributed to views within a 28-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dClick> ;
    sh:name "7d click" ;
    sh:description "A statistic for actions attributed to clicks within a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dClickAllConversions> ;
    sh:name "7d click all conversions" ;
    sh:description "A statistic for all conversions attributed to clicks within a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dClickFirstConversion> ;
    sh:name "7d click first conversion" ;
    sh:description "A statistic for first conversions attributed to clicks within a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dPassback> ;
    sh:name "7d passback" ;
    sh:description "A statistic for passback activity associated with a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dSequenced> ;
    sh:name "7d sequenced" ;
    sh:description "A statistic for sequenced activity associated with a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dView> ;
    sh:name "7d view" ;
    sh:description "A statistic for actions attributed to views within a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dViewAllConversions> ;
    sh:name "7d view all conversions" ;
    sh:description "A statistic for all conversions attributed to views within a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/7dViewFirstConversion> ;
    sh:name "7d view first conversion" ;
    sh:description "A statistic for first conversions attributed to views within a seven-day window." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionBrand> ;
    sh:name "action brand" ;
    sh:description "The brand associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionCanvasComponentId> ;
    sh:name "action canvas component id" ;
    sh:description "An identifier for the canvas component associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionCanvasComponentName> ;
    sh:name "action canvas component name" ;
    sh:description "The name of the canvas component associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionCarouselCardId> ;
    sh:name "action carousel card id" ;
    sh:description "An identifier for the carousel card associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionCarouselCardName> ;
    sh:name "action carousel card name" ;
    sh:description "The name of the carousel card associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionCategory> ;
    sh:name "action category" ;
    sh:description "The category associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionConvertedProductId> ;
    sh:name "action converted product id" ;
    sh:description "An identifier for the product associated with the converted action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionDestination> ;
    sh:name "action destination" ;
    sh:description "The destination associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionDevice> ;
    sh:name "action device" ;
    sh:description "The device associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionEventChannel> ;
    sh:name "action event channel" ;
    sh:description "The event channel associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionLinkClickDestination> ;
    sh:name "action link click destination" ;
    sh:description "The destination associated with the action’s link click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionLocationCode> ;
    sh:name "action location code" ;
    sh:description "The location code associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionReaction> ;
    sh:name "action reaction" ;
    sh:description "The reaction associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionTargetId> ;
    sh:name "action target id" ;
    sh:description "An identifier for the target associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionType> ;
    sh:name "action type" ;
    sh:description "The type of action represented by the statistic." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionVideoAssetId> ;
    sh:name "action video asset id" ;
    sh:description "An identifier for the video asset associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionVideoSound> ;
    sh:name "action video sound" ;
    sh:description "The sound information associated with the action’s video." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/actionVideoType> ;
    sh:name "action video type" ;
    sh:description "The type of video associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/custom> ;
    sh:name "custom" ;
    sh:description "A custom value associated with the action statistic." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/dda> ;
    sh:name "dda" ;
    sh:description "A DDA value associated with the action statistic." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/incrementality> ;
    sh:name "incrementality" ;
    sh:description "An incrementality value associated with the action statistic." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/incrementalityAllConversions> ;
    sh:name "incrementality all conversions" ;
    sh:description "Represents incrementality statistics for all conversions in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/incrementalityFirstConversion> ;
    sh:name "incrementality first conversion" ;
    sh:description "Represents incrementality statistics for the first conversion in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/inline> ;
    sh:name "inline" ;
    sh:description "Represents an inline action statistic in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/interactiveComponentStickerId> ;
    sh:name "interactive component sticker id" ;
    sh:description "Represents the identifier of an interactive component sticker associated with the action statistics." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/interactiveComponentStickerResponse> ;
    sh:name "interactive component sticker response" ;
    sh:description "Represents a response to an interactive component sticker in the action statistics." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/promotedProductSetResult> ;
    sh:name "promoted product set result" ;
    sh:description "Represents the result associated with the promoted product set in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/skanClick> ;
    sh:name "skan click" ;
    sh:description "Represents SKAdNetwork statistics attributed to clicks in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/skanClickSecondPostback> ;
    sh:name "skan click second postback" ;
    sh:description "Represents SKAdNetwork statistics from the second click postback in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/skanClickThirdPostback> ;
    sh:name "skan click third postback" ;
    sh:description "Represents SKAdNetwork statistics from the third click postback in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/skanView> ;
    sh:name "skan view" ;
    sh:description "Represents SKAdNetwork statistics attributed to views in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/skanViewSecondPostback> ;
    sh:name "skan view second postback" ;
    sh:description "Represents SKAdNetwork statistics from the second view postback in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/skanViewThirdPostback> ;
    sh:name "skan view third postback" ;
    sh:description "Represents SKAdNetwork statistics from the third view postback in AdsActionStats." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsActionStats/value> ;
    sh:name "value" ;
    sh:description "Represents a non-negative numeric metric value in AdsActionStats." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] .

# Shape for Ads Histogram Stats
meta:AdsHistogramStatsShape a sh:NodeShape ;
  sh:targetClass meta:AdsHistogramStats ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dClick> ;
    sh:name "1d click" ;
    sh:description "Contains histogram statistics for click activity within the one-day click window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dClickAllConversions> ;
    sh:name "1d click all conversions" ;
    sh:description "Contains histogram statistics for all conversions attributed within the one-day click window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dClickFirstConversion> ;
    sh:name "1d click first conversion" ;
    sh:description "Contains histogram statistics for first conversions attributed within the one-day click window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dEv> ;
    sh:name "1d ev" ;
    sh:description "Contains histogram statistics for event activity within the one-day event window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dEvAllConversions> ;
    sh:name "1d ev all conversions" ;
    sh:description "Contains histogram statistics for all conversions within the one-day event window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dEvFirstConversion> ;
    sh:name "1d ev first conversion" ;
    sh:description "Contains histogram statistics for first conversions within the one-day event window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dPassback> ;
    sh:name "1d passback" ;
    sh:description "Contains histogram statistics for passback activity within the one-day window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dSequenced> ;
    sh:name "1d sequenced" ;
    sh:description "Contains histogram statistics for sequenced activity within the one-day window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dView> ;
    sh:name "1d view" ;
    sh:description "Contains histogram statistics for view activity within the one-day view window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dViewAllConversions> ;
    sh:name "1d view all conversions" ;
    sh:description "Contains histogram statistics for all conversions attributed within the one-day view window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/1dViewFirstConversion> ;
    sh:name "1d view first conversion" ;
    sh:description "Contains histogram statistics for first conversions attributed within the one-day view window." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dClick> ;
    sh:name "28d click" ;
    sh:description "Represents a histogram value for the 28-day click category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dClickAllConversions> ;
    sh:name "28d click all conversions" ;
    sh:description "Represents a histogram value for all conversions attributed to clicks within the 28-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dClickFirstConversion> ;
    sh:name "28d click first conversion" ;
    sh:description "Represents a histogram value for the first conversion attributed to clicks within the 28-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dPassback> ;
    sh:name "28d passback" ;
    sh:description "Represents a histogram value for the 28-day passback category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dSequenced> ;
    sh:name "28d sequenced" ;
    sh:description "Represents a histogram value for the 28-day sequenced category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dView> ;
    sh:name "28d view" ;
    sh:description "Represents a histogram value for the 28-day view category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dViewAllConversions> ;
    sh:name "28d view all conversions" ;
    sh:description "Represents a histogram value for all conversions attributed to views within the 28-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/28dViewFirstConversion> ;
    sh:name "28d view first conversion" ;
    sh:description "Represents a histogram value for the first conversion attributed to views within the 28-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dClick> ;
    sh:name "7d click" ;
    sh:description "Represents a histogram value for the 7-day click category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dClickAllConversions> ;
    sh:name "7d click all conversions" ;
    sh:description "Represents a histogram value for all conversions attributed to clicks within the 7-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dClickFirstConversion> ;
    sh:name "7d click first conversion" ;
    sh:description "Represents a histogram value for the first conversion attributed to clicks within the 7-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dPassback> ;
    sh:name "7d passback" ;
    sh:description "Represents a histogram value for the 7-day passback category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dSequenced> ;
    sh:name "7d sequenced" ;
    sh:description "Represents a histogram value for the 7-day sequenced category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dView> ;
    sh:name "7d view" ;
    sh:description "Represents a histogram value for the 7-day view category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dViewAllConversions> ;
    sh:name "7d view all conversions" ;
    sh:description "Represents a histogram value for all conversions attributed to views within the 7-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/7dViewFirstConversion> ;
    sh:name "7d view first conversion" ;
    sh:description "Represents a histogram value for the first conversion attributed to views within the 7-day category." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionBrand> ;
    sh:name "action brand" ;
    sh:description "Identifies the brand associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionCanvasComponentId> ;
    sh:name "action canvas component id" ;
    sh:description "Identifies the canvas component associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionCanvasComponentName> ;
    sh:name "action canvas component name" ;
    sh:description "Names the canvas component associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionCarouselCardId> ;
    sh:name "action carousel card id" ;
    sh:description "Identifies the carousel card associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionCarouselCardName> ;
    sh:name "action carousel card name" ;
    sh:description "Names the carousel card associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionCategory> ;
    sh:name "action category" ;
    sh:description "Identifies the category of the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionConvertedProductId> ;
    sh:name "action converted product id" ;
    sh:description "Identifies the product associated with the converted action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionDestination> ;
    sh:name "action destination" ;
    sh:description "Identifies the destination associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionDevice> ;
    sh:name "action device" ;
    sh:description "Identifies the device associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionEventChannel> ;
    sh:name "action event channel" ;
    sh:description "Identifies the event channel associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionLinkClickDestination> ;
    sh:name "action link click destination" ;
    sh:description "Identifies the destination associated with the link click action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionLocationCode> ;
    sh:name "action location code" ;
    sh:description "Identifies the location associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionReaction> ;
    sh:name "action reaction" ;
    sh:description "Identifies the reaction associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionTargetId> ;
    sh:name "action target id" ;
    sh:description "Identifies the target associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionType> ;
    sh:name "action type" ;
    sh:description "Identifies the type of action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionVideoAssetId> ;
    sh:name "action video asset id" ;
    sh:description "Identifies the video asset associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionVideoSound> ;
    sh:name "action video sound" ;
    sh:description "Represents the sound attribute associated with the video action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/actionVideoType> ;
    sh:name "action video type" ;
    sh:description "Represents the type associated with the video action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/custom> ;
    sh:name "custom" ;
    sh:description "Represents a custom histogram value." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/dda> ;
    sh:name "dda" ;
    sh:description "Represents a histogram value associated with DDA." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/incrementality> ;
    sh:name "incrementality" ;
    sh:description "Represents a histogram value associated with incrementality." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/incrementalityAllConversions> ;
    sh:name "incrementality all conversions" ;
    sh:description "Represents a histogram value for all conversions associated with incrementality." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/incrementalityFirstConversion> ;
    sh:name "incrementality first conversion" ;
    sh:description "Represents a histogram value for the first conversion associated with incrementality." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/inline> ;
    sh:name "inline" ;
    sh:description "Represents an inline histogram value." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/interactiveComponentStickerId> ;
    sh:name "interactive component sticker id" ;
    sh:description "Identifies the interactive component sticker associated with the action." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/interactiveComponentStickerResponse> ;
    sh:name "interactive component sticker response" ;
    sh:description "Represents the response associated with the interactive component sticker." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/promotedProductSetResult> ;
    sh:name "promoted product set result" ;
    sh:description "Represents the result associated with the promoted product set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/skanClick> ;
    sh:name "skan click" ;
    sh:description "Represents a histogram value for SKAN-attributed clicks." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/skanClickSecondPostback> ;
    sh:name "skan click second postback" ;
    sh:description "Represents a histogram value for the second SKAN click postback." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/skanClickThirdPostback> ;
    sh:name "skan click third postback" ;
    sh:description "Represents a histogram value for the third SKAN click postback." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/skanView> ;
    sh:name "skan view" ;
    sh:description "Represents a histogram value for SKAN-attributed views." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/skanViewSecondPostback> ;
    sh:name "skan view second postback" ;
    sh:description "Represents a histogram value for the second SKAN view postback." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/skanViewThirdPostback> ;
    sh:name "skan view third postback" ;
    sh:description "Represents a histogram value for the third SKAN view postback." ;
    sh:datatype xsd:int ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsHistogramStats/value> ;
    sh:name "value" ;
    sh:description "Represents a histogram value." ;
    sh:datatype xsd:int ;
  ] .

# Shape for Ads Insights
meta:AdsInsightsShape a sh:NodeShape ;
  sh:targetClass meta:AdsInsights ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/accountCurrency> ;
    sh:name "account currency" ;
    sh:description "Identifies the currency associated with the advertising account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/accountId> ;
    sh:name "account id" ;
    sh:description "Identifies the advertising account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/accountName> ;
    sh:name "account name" ;
    sh:description "Names the advertising account." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/actionValues> ;
    sh:name "action values" ;
    sh:description "Contains action values associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/actions> ;
    sh:name "actions" ;
    sh:description "Contains actions associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adClickActions> ;
    sh:name "ad click actions" ;
    sh:description "Contains actions associated with ad clicks." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adId> ;
    sh:name "ad id" ;
    sh:description "Identifies the ad associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adImpressionActions> ;
    sh:name "ad impression actions" ;
    sh:description "Contains actions associated with ad impressions." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adName> ;
    sh:name "ad name" ;
    sh:description "Names the ad associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adsetEnd> ;
    sh:name "adset end" ;
    sh:description "Represents the end value associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adsetId> ;
    sh:name "adset id" ;
    sh:description "Identifies the ad set associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adsetName> ;
    sh:name "adset name" ;
    sh:description "Names the ad set associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/adsetStart> ;
    sh:name "adset start" ;
    sh:description "Represents the start value associated with the ad set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/ageTargeting> ;
    sh:name "age targeting" ;
    sh:description "Represents the age targeting associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/attributionSetting> ;
    sh:name "attribution setting" ;
    sh:description "Represents the attribution setting associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/auctionBid> ;
    sh:name "auction bid" ;
    sh:description "Represents the auction bid associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/auctionCompetitiveness> ;
    sh:name "auction competitiveness" ;
    sh:description "Represents auction competitiveness associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/auctionMaxCompetitorBid> ;
    sh:name "auction max competitor bid" ;
    sh:description "Represents the maximum competitor bid associated with the auction." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/averagePurchasesConversionValue> ;
    sh:name "average purchases conversion value" ;
    sh:description "Contains the average purchases conversion value associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/buyingType> ;
    sh:name "buying type" ;
    sh:description "Represents the buying type associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/campaignId> ;
    sh:name "campaign id" ;
    sh:description "Identifies the campaign associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/campaignName> ;
    sh:name "campaign name" ;
    sh:description "Names the campaign associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/canvasAvgViewPercent> ;
    sh:name "canvas avg view percent" ;
    sh:description "Represents the average canvas view percentage." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/canvasAvgViewTime> ;
    sh:name "canvas avg view time" ;
    sh:description "Represents the average canvas view time." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/catalogSegmentActions> ;
    sh:name "catalog segment actions" ;
    sh:description "Contains actions associated with catalog segments." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/catalogSegmentValue> ;
    sh:name "catalog segment value" ;
    sh:description "Contains values associated with catalog segments." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/catalogSegmentValueMobilePurchaseRoas> ;
    sh:name "catalog segment value mobile purchase roas" ;
    sh:description "Contains mobile purchase return-on-ad-spend values associated with catalog segments." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/catalogSegmentValueOmniPurchaseRoas> ;
    sh:name "catalog segment value omni purchase roas" ;
    sh:description "Contains omni purchase return-on-ad-spend values associated with catalog segments." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/catalogSegmentValueWebsitePurchaseRoas> ;
    sh:name "catalog segment value website purchase roas" ;
    sh:description "Contains website purchase return-on-ad-spend values associated with catalog segments." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/clicks> ;
    sh:name "clicks" ;
    sh:description "Represents the count of clicks associated with the insights." ;
    sh:datatype xsd:nonNegativeInteger ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/conversionLeadRate> ;
    sh:name "conversion lead rate" ;
    sh:description "Contains conversion lead rate information associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/conversionLeads> ;
    sh:name "conversion leads" ;
    sh:description "Contains conversion lead information associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/conversionRateRanking> ;
    sh:name "conversion rate ranking" ;
    sh:description "Represents the conversion rate ranking associated with the insights." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/conversionValues> ;
    sh:name "conversion values" ;
    sh:description "Contains conversion values associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/conversions> ;
    sh:name "conversions" ;
    sh:description "Contains conversions associated with the insights." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductAppCustomEventFbMobilePurchase> ;
    sh:name "converted product app custom event fb mobile purchase" ;
    sh:description "Contains converted product information for the FB mobile purchase app custom event." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductAppCustomEventFbMobilePurchaseValue> ;
    sh:name "converted product app custom event fb mobile purchase value" ;
    sh:description "Contains converted product values for the FB mobile purchase app custom event." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductOfflinePurchase> ;
    sh:name "converted product offline purchase" ;
    sh:description "Contains converted product information for offline purchases." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductOfflinePurchaseValue> ;
    sh:name "converted product offline purchase value" ;
    sh:description "Contains converted product values for offline purchases." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductOmniPurchase> ;
    sh:name "converted product omni purchase" ;
    sh:description "Contains converted product information for omni purchases." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductOmniPurchaseValues> ;
    sh:name "converted product omni purchase values" ;
    sh:description "Contains converted product values for omni purchases." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductQuantity> ;
    sh:name "converted product quantity" ;
    sh:description "Contains quantities associated with converted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductValue> ;
    sh:name "converted product value" ;
    sh:description "Represents the value associated with converted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductWebsitePixelPurchase> ;
    sh:name "converted product website pixel purchase" ;
    sh:description "Represents website pixel purchases attributed to converted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedProductWebsitePixelPurchaseValue> ;
    sh:name "converted product website pixel purchase value" ;
    sh:description "Represents the value associated with website pixel purchases attributed to converted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductAppCustomEventFbMobilePurchase> ;
    sh:name "converted promoted product app custom event fb mobile purchase" ;
    sh:description "Represents app purchase events attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductAppCustomEventFbMobilePurchaseValue> ;
    sh:name "converted promoted product app custom event fb mobile purchase value" ;
    sh:description "Represents the value associated with app purchase events attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductOfflinePurchase> ;
    sh:name "converted promoted product offline purchase" ;
    sh:description "Represents offline purchases attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductOfflinePurchaseValue> ;
    sh:name "converted promoted product offline purchase value" ;
    sh:description "Represents the value associated with offline purchases attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductOmniPurchase> ;
    sh:name "converted promoted product omni purchase" ;
    sh:description "Represents omnichannel purchases attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductOmniPurchaseValues> ;
    sh:name "converted promoted product omni purchase values" ;
    sh:description "Represents the values associated with omnichannel purchases attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductQuantity> ;
    sh:name "converted promoted product quantity" ;
    sh:description "Represents the quantity of converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductValue> ;
    sh:name "converted promoted product value" ;
    sh:description "Represents the value associated with converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductWebsitePixelPurchase> ;
    sh:name "converted promoted product website pixel purchase" ;
    sh:description "Represents website pixel purchases attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/convertedPromotedProductWebsitePixelPurchaseValue> ;
    sh:name "converted promoted product website pixel purchase value" ;
    sh:description "Represents the value associated with website pixel purchases attributed to converted promoted products." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPer15SecVideoView> ;
    sh:name "cost per15sec video view" ;
    sh:description "Represents the cost per 15-second video view." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPer2SecContinuousVideoView> ;
    sh:name "cost per2sec continuous video view" ;
    sh:description "Represents the cost per 2-second continuous video view." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerActionType> ;
    sh:name "cost per action type" ;
    sh:description "Represents the cost per action type." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerAdClick> ;
    sh:name "cost per ad click" ;
    sh:description "Represents the cost per ad click." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerConversion> ;
    sh:name "cost per conversion" ;
    sh:description "Represents the cost per conversion." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerConversionLead> ;
    sh:name "cost per conversion lead" ;
    sh:description "Represents the cost per conversion lead." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerDdaCountbyConvs> ;
    sh:name "cost per dda countby convs" ;
    sh:description "Represents the cost per DDA count-by conversion." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerEstimatedAdRecallers> ;
    sh:name "cost per estimated ad recallers" ;
    sh:description "Represents the cost per estimated ad recaller." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerInlineLinkClick> ;
    sh:name "cost per inline link click" ;
    sh:description "Represents the cost per inline link click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerInlinePostEngagement> ;
    sh:name "cost per inline post engagement" ;
    sh:description "Represents the cost per inline post engagement." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerObjectiveResult> ;
    sh:name "cost per objective result" ;
    sh:description "Represents the cost per objective result." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerOneThousandAdImpression> ;
    sh:name "cost per one thousand ad impression" ;
    sh:description "Represents the cost per one thousand ad impressions." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerOutboundClick> ;
    sh:name "cost per outbound click" ;
    sh:description "Represents the cost per outbound click." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerResult> ;
    sh:name "cost per result" ;
    sh:description "Represents the cost per result." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerThruplay> ;
    sh:name "cost per thruplay" ;
    sh:description "Represents the cost per ThruPlay." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerUniqueActionType> ;
    sh:name "cost per unique action type" ;
    sh:description "Represents the cost per unique action type." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerUniqueClick> ;
    sh:name "cost per unique click" ;
    sh:description "Represents the cost per unique click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerUniqueConversion> ;
    sh:name "cost per unique conversion" ;
    sh:description "Represents the cost per unique conversion." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerUniqueInlineLinkClick> ;
    sh:name "cost per unique inline link click" ;
    sh:description "Represents the cost per unique inline link click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/costPerUniqueOutboundClick> ;
    sh:name "cost per unique outbound click" ;
    sh:description "Represents the cost per unique outbound click." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/cpc> ;
    sh:name "cpc" ;
    sh:description "Represents money per counted unit for this node, denominated in the account currency; the specific denominator is not recoverable from the available evidence." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/cpm> ;
    sh:name "cpm" ;
    sh:description "Represents money per counted unit for this node, denominated in the account currency; the specific denominator is not recoverable from the available evidence." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/cpp> ;
    sh:name "cpp" ;
    sh:description "Represents money per counted unit for this node, denominated in the account currency; the specific denominator is not recoverable from the available evidence." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/createdTime> ;
    sh:name "created time" ;
    sh:description "Represents the creation time associated with the AdsInsights record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/creativeMediaType> ;
    sh:name "creative media type" ;
    sh:description "Represents the media type of the creative." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/ctr> ;
    sh:name "ctr" ;
    sh:description "Represents a click-through ratio, but the available evidence does not specify whether it is a fraction or scaled by one hundred." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/dateStart> ;
    sh:name "date start" ;
    sh:description "Represents the start date for the AdsInsights record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/dateStop> ;
    sh:name "date stop" ;
    sh:description "Represents the stop date for the AdsInsights record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/ddaCountbyConvs> ;
    sh:name "dda countby convs" ;
    sh:description "Represents DDA count-by conversions." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/ddaResults> ;
    sh:name "dda results" ;
    sh:description "Represents DDA results." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/engagementRateRanking> ;
    sh:name "engagement rate ranking" ;
    sh:description "Represents the engagement rate ranking." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/estimatedAdRecallRate> ;
    sh:name "estimated ad recall rate" ;
    sh:description "Represents the estimated ad recall rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/estimatedAdRecallRateLowerBound> ;
    sh:name "estimated ad recall rate lower bound" ;
    sh:description "Represents the lower bound of the estimated ad recall rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/estimatedAdRecallRateUpperBound> ;
    sh:name "estimated ad recall rate upper bound" ;
    sh:description "Represents the upper bound of the estimated ad recall rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/estimatedAdRecallers> ;
    sh:name "estimated ad recallers" ;
    sh:description "Represents the estimated number of ad recallers." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/estimatedAdRecallersLowerBound> ;
    sh:name "estimated ad recallers lower bound" ;
    sh:description "Represents the lower bound of the estimated number of ad recallers." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/estimatedAdRecallersUpperBound> ;
    sh:name "estimated ad recallers upper bound" ;
    sh:description "Represents the upper bound of the estimated number of ad recallers." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/frequency> ;
    sh:name "frequency" ;
    sh:description "Represents a frequency ratio, but the available evidence does not specify its convention." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/fullViewImpressions> ;
    sh:name "full view impressions" ;
    sh:description "Represents full-view impressions." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/fullViewReach> ;
    sh:name "full view reach" ;
    sh:description "Represents full-view reach." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/genderTargeting> ;
    sh:name "gender targeting" ;
    sh:description "Represents the gender targeting." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/impressions> ;
    sh:name "impressions" ;
    sh:description "Represents the count of impressions." ;
    sh:datatype xsd:nonNegativeInteger ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/inlineLinkClickCtr> ;
    sh:name "inline link click ctr" ;
    sh:description "Represents the click-through ratio for inline link clicks." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/inlineLinkClicks> ;
    sh:name "inline link clicks" ;
    sh:description "Represents inline link clicks." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/inlinePostEngagement> ;
    sh:name "inline post engagement" ;
    sh:description "Represents inline post engagements." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/instagramUpcomingEventRemindersSet> ;
    sh:name "instagram upcoming event reminders set" ;
    sh:description "Represents Instagram upcoming event reminders set." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/instantExperienceClicksToOpen> ;
    sh:name "instant experience clicks to open" ;
    sh:description "Represents clicks that open an Instant Experience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/instantExperienceClicksToStart> ;
    sh:name "instant experience clicks to start" ;
    sh:description "Represents clicks that start an Instant Experience." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/instantExperienceOutboundClicks> ;
    sh:name "instant experience outbound clicks" ;
    sh:description "Represents outbound clicks from an Instant Experience." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/interactiveComponentTap> ;
    sh:name "interactive component tap" ;
    sh:description "Represents taps on interactive components." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/labels> ;
    sh:name "labels" ;
    sh:description "Represents labels associated with the AdsInsights record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/landingPageViewActionsPerLinkClick> ;
    sh:name "landing page view actions per link click" ;
    sh:description "Represents landing page view actions per link click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/landingPageViewPerLinkClick> ;
    sh:name "landing page view per link click" ;
    sh:description "Represents landing page views per link click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/landingPageViewPerPurchaseRate> ;
    sh:name "landing page view per purchase rate" ;
    sh:description "Represents the landing page view per purchase rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/location> ;
    sh:name "location" ;
    sh:description "Represents the location associated with the AdsInsights record." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesClickRateBenchmark> ;
    sh:name "marketing messages click rate benchmark" ;
    sh:description "Represents the benchmark for the marketing messages click rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesCostPerDelivered> ;
    sh:name "marketing messages cost per delivered" ;
    sh:description "Represents the cost per delivered marketing message." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesCostPerLinkBtnClick> ;
    sh:name "marketing messages cost per link btn click" ;
    sh:description "Represents the cost per marketing messages link button click." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesDelivered> ;
    sh:name "marketing messages delivered" ;
    sh:description "Represents marketing messages delivered." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesDeliveryRate> ;
    sh:name "marketing messages delivery rate" ;
    sh:description "Represents the marketing messages delivery rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesLinkBtnClick> ;
    sh:name "marketing messages link btn click" ;
    sh:description "Represents clicks on marketing messages link buttons." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesLinkBtnClickRate> ;
    sh:name "marketing messages link btn click rate" ;
    sh:description "Represents the marketing messages link button click rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesMediaViewRate> ;
    sh:name "marketing messages media view rate" ;
    sh:description "Represents the marketing messages media view rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesPhoneCallBtnClickRate> ;
    sh:name "marketing messages phone call btn click rate" ;
    sh:description "Represents the marketing messages phone call button click rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesQuickReplyBtnClick> ;
    sh:name "marketing messages quick reply btn click" ;
    sh:description "Represents clicks on marketing messages quick reply buttons." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesQuickReplyBtnClickRate> ;
    sh:name "marketing messages quick reply btn click rate" ;
    sh:description "Represents the marketing messages quick reply button click rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesRead> ;
    sh:name "marketing messages read" ;
    sh:description "Represents marketing messages read." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesReadRate> ;
    sh:name "marketing messages read rate" ;
    sh:description "Represents the marketing messages read rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesReadRateBenchmark> ;
    sh:name "marketing messages read rate benchmark" ;
    sh:description "Represents the benchmark for the marketing messages read rate." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesSent> ;
    sh:name "marketing messages sent" ;
    sh:description "Represents marketing messages sent." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesSpend> ;
    sh:name "marketing messages spend" ;
    sh:description "Represents spend on marketing messages." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesSpendCurrency> ;
    sh:name "marketing messages spend currency" ;
    sh:description "Represents the currency for marketing messages spend." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesWebsiteAddToCart> ;
    sh:name "marketing messages website add to cart" ;
    sh:description "Represents website add-to-cart actions attributed to marketing messages." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesWebsiteInitiateCheckout> ;
    sh:name "marketing messages website initiate checkout" ;
    sh:description "Represents website checkout initiations attributed to marketing messages." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesWebsitePurchase> ;
    sh:name "marketing messages website purchase" ;
    sh:description "Represents website purchases attributed to marketing messages." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/marketingMessagesWebsitePurchaseValues> ;
    sh:name "marketing messages website purchase values" ;
    sh:description "Represents the values of website purchases attributed to marketing messages." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/mobileAppPurchaseRoas> ;
    sh:name "mobile app purchase roas" ;
    sh:description "Represents return on ad spend for mobile app purchases." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/objective> ;
    sh:name "objective" ;
    sh:description "Represents the advertising objective." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/objectiveResultRate> ;
    sh:name "objective result rate" ;
    sh:description "Represents the objective result rate." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/objectiveResults> ;
    sh:name "objective results" ;
    sh:description "Represents the results for the advertising objective." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/onsiteConversionMessagingDetectedPurchaseDeduped> ;
    sh:name "onsite conversion messaging detected purchase deduped" ;
    sh:description "Represents deduplicated purchases detected through onsite conversion messaging." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/optimizationGoal> ;
    sh:name "optimization goal" ;
    sh:description "Represents the optimization goal." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/outboundClicks> ;
    sh:name "outbound clicks" ;
    sh:description "Represents outbound clicks." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/outboundClicksCtr> ;
    sh:name "outbound clicks ctr" ;
    sh:description "Represents the click-through ratio for outbound clicks." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/placePageName> ;
    sh:name "place page name" ;
    sh:description "Represents the name of the place page." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/productGroupRetailerId> ;
    sh:name "product group retailer id" ;
    sh:description "Identifies the retailer product group associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/productRetailerId> ;
    sh:name "product retailer id" ;
    sh:description "Identifies the retailer product associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/purchasePerLandingPageView> ;
    sh:name "purchase per landing page view" ;
    sh:description "Represents purchases relative to landing page views in the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/purchaseRoas> ;
    sh:name "purchase roas" ;
    sh:description "Provides purchase return-on-ad-spend statistics for the ad insight." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/purchasesPerLinkClick> ;
    sh:name "purchases per link click" ;
    sh:description "Represents purchases relative to link clicks in the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/qualifyingQuestionQualifyAnswerRate> ;
    sh:name "qualifying question qualify answer rate" ;
    sh:description "Represents the rate at which qualifying questions receive qualifying answers." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/qualityRanking> ;
    sh:name "quality ranking" ;
    sh:description "Represents the quality ranking associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/reach> ;
    sh:name "reach" ;
    sh:description "Represents the count of occurrences associated with reach for the ad insight." ;
    sh:datatype xsd:nonNegativeInteger ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/resultRate> ;
    sh:name "result rate" ;
    sh:description "Provides result-rate information for the ad insight." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/resultValuesPerformanceIndicator> ;
    sh:name "result values performance indicator" ;
    sh:description "Represents a performance indicator for result values in the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/results> ;
    sh:name "results" ;
    sh:description "Provides result information for the ad insight." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/shopsAssistedPurchases> ;
    sh:name "shops assisted purchases" ;
    sh:description "Represents purchases assisted by shops in the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/socialSpend> ;
    sh:name "social spend" ;
    sh:description "Represents social spending associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/spend> ;
    sh:name "spend" ;
    sh:description "Represents ad spending in the account currency." ;
    sh:datatype xsd:decimal ;
    sh:maxCount 1 ;
    sh:minInclusive "0"^^xsd:decimal ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/totalPostbacks> ;
    sh:name "total postbacks" ;
    sh:description "Represents the total postbacks associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/totalPostbacksDetailed> ;
    sh:name "total postbacks detailed" ;
    sh:description "Provides detailed statistics for total postbacks in the ad insight." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/totalPostbacksDetailedV4> ;
    sh:name "total postbacks detailed v4" ;
    sh:description "Provides version 4 detailed statistics for total postbacks in the ad insight." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueActions> ;
    sh:name "unique actions" ;
    sh:description "Provides statistics for unique actions in the ad insight." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueClicks> ;
    sh:name "unique clicks" ;
    sh:description "Represents unique clicks associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueConversions> ;
    sh:name "unique conversions" ;
    sh:description "Provides statistics for unique conversions in the ad insight." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueCtr> ;
    sh:name "unique ctr" ;
    sh:description "Represents the unique click-through rate for the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueInlineLinkClickCtr> ;
    sh:name "unique inline link click ctr" ;
    sh:description "Represents the unique click-through rate for inline link clicks." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueInlineLinkClicks> ;
    sh:name "unique inline link clicks" ;
    sh:description "Represents unique inline link clicks associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueLinkClicksCtr> ;
    sh:name "unique link clicks ctr" ;
    sh:description "Represents the unique click-through rate for link clicks." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueOutboundClicks> ;
    sh:name "unique outbound clicks" ;
    sh:description "Provides statistics for unique outbound clicks in the ad insight." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueOutboundClicksCtr> ;
    sh:name "unique outbound clicks ctr" ;
    sh:description "Provides statistics for the unique click-through rate of outbound clicks." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueVideoContinuous2SecWatchedActions> ;
    sh:name "unique video continuous2sec watched actions" ;
    sh:description "Provides statistics for unique video actions with continuous two-second watches." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/uniqueVideoView15Sec> ;
    sh:name "unique video view15sec" ;
    sh:description "Provides statistics for unique video views reaching 15 seconds." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/updatedTime> ;
    sh:name "updated time" ;
    sh:description "Indicates when the ad insight was updated." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/video15SecWatchedActions> ;
    sh:name "video15sec watched actions" ;
    sh:description "Provides statistics for video actions watched for 15 seconds." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/video30SecWatchedActions> ;
    sh:name "video30sec watched actions" ;
    sh:description "Provides statistics for video actions watched for 30 seconds." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoAvgTimeWatchedActions> ;
    sh:name "video avg time watched actions" ;
    sh:description "Provides statistics for average video watch-time actions." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoContinuous2SecWatchedActions> ;
    sh:name "video continuous2sec watched actions" ;
    sh:description "Provides statistics for video actions with continuous two-second watches." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoP100WatchedActions> ;
    sh:name "video p100watched actions" ;
    sh:description "Provides statistics for video actions watched through 100 percent of the video." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoP25WatchedActions> ;
    sh:name "video p25watched actions" ;
    sh:description "Provides statistics for video actions watched through 25 percent of the video." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoP50WatchedActions> ;
    sh:name "video p50watched actions" ;
    sh:description "Provides statistics for video actions watched through 50 percent of the video." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoP75WatchedActions> ;
    sh:name "video p75watched actions" ;
    sh:description "Provides statistics for video actions watched through 75 percent of the video." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoP95WatchedActions> ;
    sh:name "video p95watched actions" ;
    sh:description "Provides statistics for video actions watched through 95 percent of the video." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoPlayActions> ;
    sh:name "video play actions" ;
    sh:description "Provides statistics for video play actions." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoPlayCurveActions> ;
    sh:name "video play curve actions" ;
    sh:description "Provides histogram statistics for video play actions across the play curve." ;
    sh:node meta:AdsHistogramStatsShape ;
    sh:class meta:AdsHistogramStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoPlayRetention0To15sActions> ;
    sh:name "video play retention0to15s actions" ;
    sh:description "Provides histogram statistics for video-play retention from zero through 15 seconds." ;
    sh:node meta:AdsHistogramStatsShape ;
    sh:class meta:AdsHistogramStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoPlayRetention20To60sActions> ;
    sh:name "video play retention20to60s actions" ;
    sh:description "Provides histogram statistics for video-play retention from 20 through 60 seconds." ;
    sh:node meta:AdsHistogramStatsShape ;
    sh:class meta:AdsHistogramStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoPlayRetentionGraphActions> ;
    sh:name "video play retention graph actions" ;
    sh:description "Provides histogram statistics for the video-play retention graph." ;
    sh:node meta:AdsHistogramStatsShape ;
    sh:class meta:AdsHistogramStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoThruplayWatchedActions> ;
    sh:name "video thruplay watched actions" ;
    sh:description "Provides statistics for video actions counted as ThruPlays." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoTimeWatchedActions> ;
    sh:name "video time watched actions" ;
    sh:description "Provides statistics for video watch-time actions." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/videoViewPerImpression> ;
    sh:name "video view per impression" ;
    sh:description "Provides statistics representing video views relative to impressions." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/websiteCtr> ;
    sh:name "website ctr" ;
    sh:description "Provides statistics for the website click-through rate." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/websitePurchaseRoas> ;
    sh:name "website purchase roas" ;
    sh:description "Provides purchase return-on-ad-spend statistics for website activity." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/wishBid> ;
    sh:name "wish bid" ;
    sh:description "Represents the bid associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/anchorEventsPerformanceIndicator> ;
    sh:name "anchor events performance indicator" ;
    sh:description "Represents a performance indicator for anchor events in the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/linkClicksPerResults> ;
    sh:name "link clicks per results" ;
    sh:description "Provides information about link clicks relative to results." ;
    sh:datatype rdf:JSON ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/productViews> ;
    sh:name "product views" ;
    sh:description "Represents product views associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/totalCardView> ;
    sh:name "total card view" ;
    sh:description "Represents total card views associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/advancedActions28dView> ;
    sh:name "advanced actions28d view" ;
    sh:description "Provides action statistics for the advanced 28-day view." ;
    sh:node meta:AdsActionStatsShape ;
    sh:class meta:AdsActionStats ;
    sh:nodeKind sh:BlankNodeOrIRI ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/advancedReach1dLookback> ;
    sh:name "advanced reach1d lookback" ;
    sh:description "Represents advanced reach using a one-day lookback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/advancedReach28dLookback> ;
    sh:name "advanced reach28d lookback" ;
    sh:description "Represents advanced reach using a 28-day lookback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/advancedReach7dLookback> ;
    sh:name "advanced reach7d lookback" ;
    sh:description "Represents advanced reach using a seven-day lookback." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/anchorEventAttributionSetting> ;
    sh:name "anchor event attribution setting" ;
    sh:description "Represents the attribution setting for anchor events." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/instagramProfileVisits> ;
    sh:name "instagram profile visits" ;
    sh:description "Represents Instagram profile visits associated with the ad insight." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/property/Meta.AdsInsights/multiEventConversionAttributionSetting> ;
    sh:name "multi event conversion attribution setting" ;
    sh:description "Represents the attribution setting for conversions involving multiple events." ;
    sh:datatype xsd:string ;
    sh:maxCount 1 ;
  ] .

# Generated Record container shape for Meta.Ad.bidInfo
<https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.Ad/bidInfo> ] ;
    sh:class meta:Ad ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.Ad.bidInfo
<https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Ad/bidInfo/value> ;
    sh:datatype xsd:unsignedInt ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdAccount.tosAccepted
<https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/tosAccepted> ] ;
    sh:class meta:AdAccount ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdAccount.tosAccepted
<https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/tosAccepted/value> ;
    sh:datatype xsd:int ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdAccount.userTosAccepted
<https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdAccount/userTosAccepted> ] ;
    sh:class meta:AdAccount ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdAccount.userTosAccepted
<https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdAccount/userTosAccepted/value> ;
    sh:datatype xsd:int ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdBidAdjustments.ageRange
<https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdBidAdjustments/ageRange> ] ;
    sh:class meta:AdBidAdjustments ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdBidAdjustments.ageRange
<https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdBidAdjustments/ageRange/value> ;
    sh:datatype xsd:double ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.accountAdmin
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.accountAdmin
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/accountAdmin/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.ad
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/ad> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.ad
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/ad/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.adsConversionExperiences
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.adsConversionExperiences
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/adsConversionExperiences/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.b2c
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/b2c> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.b2c
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2c/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.b2cCommerceUnified
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.b2cCommerceUnified
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/b2cCommerceUnified/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.bsg
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/bsg> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.bsg
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/bsg/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.cityCommunity
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.cityCommunity
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/cityCommunity/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.commerce
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/commerce> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.commerce
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/commerce/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.compromise
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/compromise> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.compromise
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/compromise/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.dailyDeals
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.dailyDeals
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDeals/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.dailyDealsLegacy
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.dailyDealsLegacy
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dailyDealsLegacy/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.dpa
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/dpa> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.dpa
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/dpa/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.driCopyright
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.driCopyright
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCopyright/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.driCounterfeit
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.driCounterfeit
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/driCounterfeit/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.facebook
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/facebook> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.facebook
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebook/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.facebookPagesLiveShopping
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.facebookPagesLiveShopping
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/facebookPagesLiveShopping/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.independentWork
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.independentWork
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/independentWork/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.instagram
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/instagram> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.instagram
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagram/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.instagramShop
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.instagramShop
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/instagramShop/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.jobSearch
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.jobSearch
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/jobSearch/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.leadGenHoneypot
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.leadGenHoneypot
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/leadGenHoneypot/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplace
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplace
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplace/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceHomeRentals
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceHomeRentals
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeRentals/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceHomeSales
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceHomeSales
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceHomeSales/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceMotors
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceMotors
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceMotors/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceShops
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.marketplaceShops
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/marketplaceShops/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.maxReviewPlacements
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.maxReviewPlacements
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/maxReviewPlacements/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.neighborhoods
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.neighborhoods
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/neighborhoods/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.pageAdmin
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.pageAdmin
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/pageAdmin/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.product
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/product> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.product
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/product/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.productService
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/productService> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.productService
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/productService/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.profile
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/profile> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.profile
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/profile/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.seller
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/seller> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.seller
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/seller/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.shops
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/shops> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.shops
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/shops/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.trafficQuality
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.trafficQuality
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/trafficQuality/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.unifiedCommerceContent
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.unifiedCommerceContent
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/unifiedCommerceContent/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupPlacementSpecificReviewFeedback.whatsapp
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp> ] ;
    sh:class meta:AdgroupPlacementSpecificReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupPlacementSpecificReviewFeedback.whatsapp
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupPlacementSpecificReviewFeedback/whatsapp/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdgroupReviewFeedback.global
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdgroupReviewFeedback/global> ] ;
    sh:class meta:AdgroupReviewFeedback ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdgroupReviewFeedback.global
<https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdgroupReviewFeedback/global/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdSet.bidInfo
<https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/bidInfo> ] ;
    sh:class meta:AdSet ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdSet.bidInfo
<https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/bidInfo/value> ;
    sh:datatype xsd:unsignedInt ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.AdSet.targetingOptimizationTypes
<https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/targetingOptimizationTypes> ] ;
    sh:class meta:AdSet ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.AdSet.targetingOptimizationTypes
<https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.AdSet/targetingOptimizationTypes/value> ;
    sh:datatype xsd:int ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.Page.availablePromoOfferIds
<https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.Page/availablePromoOfferIds> ] ;
    sh:class meta:Page ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.Page.availablePromoOfferIds
<https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/ContainerShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/Container> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] .

# Generated Record container shape for Meta.Page.availablePromoOfferIds{value}
<https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/Entry> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.Page.availablePromoOfferIds{value}
<https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/availablePromoOfferIds/value-record/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.Page.differentlyOpenOfferings
<https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.Page/differentlyOpenOfferings> ] ;
    sh:class meta:Page ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.Page.differentlyOpenOfferings
<https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/differentlyOpenOfferings/value> ;
    sh:datatype xsd:boolean ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.Page.hours
<https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.Page/hours> ] ;
    sh:class meta:Page ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.Page.hours
<https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/hours/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# Generated Record container shape for Meta.Page.priorityHours
<https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/ContainerShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/Container> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/property/Meta.Page/priorityHours> ] ;
    sh:class meta:Page ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/entry> ;
    sh:node <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/EntryShape> ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/Entry> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] ;
  sh:sparql [
    a sh:SPARQLConstraint ;
    sh:message "Record entry keys must be unique" ;
    sh:select """SELECT $this ?key WHERE { $this <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/entry> ?left, ?right . FILTER(?left != ?right) ?left <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/key> ?key . ?right <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/key> ?key . }"""
  ] .

# Generated Record entry shape for Meta.Page.priorityHours
<https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/EntryShape> a sh:NodeShape ;
  sh:targetClass <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/Entry> ;
  sh:property [
    sh:path [ sh:inversePath <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/entry> ] ;
    sh:class <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/Container> ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/key> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] ;
  sh:property [
    sh:path <https://relay.inferal.com/ontology/meta/record/Meta.Page/priorityHours/value> ;
    sh:datatype xsd:string ;
    sh:minCount 1 ;
    sh:maxCount 1
  ] .

# RDF Collection level 1 for Meta.AdSet.timeBasedAdRotationIdBlocks
<https://relay.inferal.com/ontology/meta/property/Meta.AdSet/timeBasedAdRotationIdBlocks/ListLevel1Shape> a sh:NodeShape ;
  sh:property [
    sh:path [ sh:zeroOrMorePath rdf:rest ] ;
    sh:hasValue rdf:nil
  ] ;
  sh:property [
    sh:path [ sh:zeroOrMorePath rdf:rest ] ;
    sh:or (
      [
        sh:in ( rdf:nil ) ;
        sh:property [ sh:path rdf:first ; sh:maxCount 0 ] ;
        sh:property [ sh:path rdf:rest ; sh:maxCount 0 ]
      ]
      [
        sh:property [ sh:path rdf:first ; sh:minCount 1 ; sh:maxCount 1 ] ;
        sh:property [ sh:path rdf:rest ; sh:minCount 1 ; sh:maxCount 1 ]
      ]
    )
  ] ;
  sh:property [
    sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ;
    sh:node <https://relay.inferal.com/ontology/meta/property/Meta.AdSet/timeBasedAdRotationIdBlocks/ListLevel2Shape> ;
    sh:nodeKind sh:BlankNodeOrIRI
  ] .

# RDF Collection level 2 for Meta.AdSet.timeBasedAdRotationIdBlocks
<https://relay.inferal.com/ontology/meta/property/Meta.AdSet/timeBasedAdRotationIdBlocks/ListLevel2Shape> a sh:NodeShape ;
  sh:property [
    sh:path [ sh:zeroOrMorePath rdf:rest ] ;
    sh:hasValue rdf:nil
  ] ;
  sh:property [
    sh:path [ sh:zeroOrMorePath rdf:rest ] ;
    sh:or (
      [
        sh:in ( rdf:nil ) ;
        sh:property [ sh:path rdf:first ; sh:maxCount 0 ] ;
        sh:property [ sh:path rdf:rest ; sh:maxCount 0 ]
      ]
      [
        sh:property [ sh:path rdf:first ; sh:minCount 1 ; sh:maxCount 1 ] ;
        sh:property [ sh:path rdf:rest ; sh:minCount 1 ; sh:maxCount 1 ]
      ]
    )
  ] ;
  sh:property [
    sh:path ( [ sh:zeroOrMorePath rdf:rest ] rdf:first ) ;
    sh:datatype xsd:int
  ] .
