From 67a6bb04fd3a9e79894c4ef20b439ae89f40fdf1 Mon Sep 17 00:00:00 2001 From: Nicolas Dos Santos Date: Sun, 8 Mar 2026 14:51:04 +0100 Subject: [PATCH] 281: Supports filtering of type properties --- .../schemaorg/generator/SchemaConstants.java | 11 + .../generator/SchemaModelGeneratorApp.java | 15 +- .../generator/core/GeneratorOptions.java | 99 + .../core/SchemaModelGeneratorImpl.java | 4 +- .../core/filter/SchemaDefinitionFilter.java | 5 +- .../filter/SchemaDefinitionFilterImpl.java | 77 +- .../schemaorg/generator/logging/Emojis.java | 4 + .../schemaorg/generator/model/Type.java | 31 + .../parser/SchemaModelParserImpl.java | 5 +- .../SchemaModelGeneratorAppTest.java | 46 +- .../SchemaModelGeneratorBuilderTest.java | 30 +- .../generator/core/GeneratorOptionsTest.java | 51 + .../core/SchemaModelGeneratorImplTest.java | 28 +- .../SchemaDefinitionFilterImplTest.java | 68 +- .../schemaorg/generator/model/TypeTest.java | 107 + .../resources/data/filters/model/Action.java | 377 +++ .../data/filters/model/ActionStatusType.java | 16 + .../filters/model/AdministrativeArea.java | 16 + .../model/AdultOrientedEnumeration.java | 18 + .../data/filters/model/AggregateOffer.java | 131 ++ .../data/filters/model/AggregateRating.java | 81 + .../filters/model/AnatomicalStructure.java | 215 ++ .../data/filters/model/AnatomicalSystem.java | 149 ++ .../resources/data/filters/model/Article.java | 293 +++ .../data/filters/model/Audience.java | 60 + .../resources/data/filters/model/BedType.java | 18 + .../data/filters/model/BioChemEntity.java | 485 ++++ .../model/BodyMeasurementTypeEnumeration.java | 18 + .../resources/data/filters/model/Brand.java | 116 + .../data/filters/model/BreadcrumbList.java | 17 + .../filters/model/BusinessEntityType.java | 18 + .../data/filters/model/BusinessFunction.java | 18 + .../data/filters/model/CategoryCode.java | 83 + .../data/filters/model/CategoryCodeSet.java | 46 + .../data/filters/model/Certification.java | 362 +++ .../model/CertificationStatusEnumeration.java | 18 + .../data/filters/model/CivicStructure.java | 38 + .../resources/data/filters/model/Claim.java | 115 + .../resources/data/filters/model/Class.java | 58 + .../data/filters/model/ConstraintNode.java | 84 + .../data/filters/model/ContactPoint.java | 276 +++ .../filters/model/ContactPointOption.java | 16 + .../resources/data/filters/model/Country.java | 16 + .../data/filters/model/CreativeWork.java | 17 + .../data/filters/model/CreditCard.java | 19 + .../data/filters/model/DDxElement.java | 67 + .../data/filters/model/DataCatalog.java | 181 ++ .../data/filters/model/DataDownload.java | 159 ++ .../data/filters/model/DataFeed.java | 52 + .../data/filters/model/DataFeedItem.java | 121 + .../resources/data/filters/model/Dataset.java | 345 +++ .../data/filters/model/DayOfWeek.java | 20 + .../data/filters/model/DefinedRegion.java | 167 ++ .../data/filters/model/DefinedTerm.java | 111 + .../data/filters/model/DefinedTermSet.java | 74 + .../model/DeliveryChargeSpecification.java | 181 ++ .../data/filters/model/DeliveryMethod.java | 18 + .../resources/data/filters/model/Demand.java | 1084 +++++++++ .../model/DigitalPlatformEnumeration.java | 18 + .../data/filters/model/Distance.java | 16 + .../data/filters/model/DoseSchedule.java | 123 + .../model/DriveWheelConfigurationValue.java | 17 + .../resources/data/filters/model/Drug.java | 784 +++++++ .../data/filters/model/DrugClass.java | 42 + .../data/filters/model/DrugCostCategory.java | 17 + .../data/filters/model/DrugLegalStatus.java | 42 + .../filters/model/DrugPregnancyCategory.java | 17 + .../filters/model/DrugPrescriptionStatus.java | 17 + .../data/filters/model/DrugStrength.java | 141 ++ .../data/filters/model/Duration.java | 16 + .../model/EUEnergyEfficiencyEnumeration.java | 18 + .../EducationalOccupationalCredential.java | 228 ++ .../model/EducationalOrganization.java | 38 + .../resources/data/filters/model/Energy.java | 16 + .../model/EnergyConsumptionDetails.java | 101 + .../model/EnergyEfficiencyEnumeration.java | 18 + ...EnergyStarEnergyEfficiencyEnumeration.java | 18 + .../data/filters/model/EntryPoint.java | 180 ++ .../data/filters/model/Enumeration.java | 57 + .../resources/data/filters/model/Event.java | 1185 ++++++++++ .../model/EventAttendanceModeEnumeration.java | 18 + .../data/filters/model/EventStatusType.java | 16 + .../data/filters/model/FinancialProduct.java | 114 + .../model/FulfillmentTypeEnumeration.java | 18 + .../data/filters/model/GameServerStatus.java | 16 + .../data/filters/model/GenderType.java | 16 + .../resources/data/filters/model/Gene.java | 156 ++ .../data/filters/model/GeoCoordinates.java | 183 ++ .../data/filters/model/GeoShape.java | 214 ++ .../filters/model/GeospatialGeometry.java | 290 +++ .../filters/model/GovernmentBenefitsType.java | 18 + .../resources/data/filters/model/Grant.java | 179 ++ .../filters/model/HealthInsurancePlan.java | 268 +++ .../HealthPlanCostSharingSpecification.java | 156 ++ .../filters/model/HealthPlanFormulary.java | 110 + .../data/filters/model/HealthPlanNetwork.java | 110 + .../resources/data/filters/model/HowTo.java | 269 +++ .../data/filters/model/HowToItem.java | 52 + .../data/filters/model/HowToSection.java | 52 + .../data/filters/model/HowToStep.java | 16 + .../data/filters/model/HowToSupply.java | 45 + .../data/filters/model/HowToTool.java | 16 + .../data/filters/model/ImageObject.java | 122 + .../filters/model/InfectiousAgentClass.java | 17 + .../data/filters/model/Intangible.java | 16 + .../filters/model/InteractionCounter.java | 196 ++ .../data/filters/model/ItemAvailability.java | 16 + .../data/filters/model/ItemList.java | 129 ++ .../data/filters/model/ItemListOrderType.java | 16 + .../data/filters/model/Language.java | 16 + .../data/filters/model/LegalForceStatus.java | 20 + .../filters/model/LifestyleModification.java | 17 + .../data/filters/model/ListItem.java | 110 + .../data/filters/model/LoanOrCredit.java | 299 +++ .../model/LocationFeatureSpecification.java | 103 + .../resources/data/filters/model/Map.java | 38 + .../data/filters/model/MapCategoryType.java | 16 + .../resources/data/filters/model/Mass.java | 16 + .../filters/model/MaximumDoseSchedule.java | 17 + .../filters/model/MeasurementMethodEnum.java | 18 + .../model/MeasurementTypeEnumeration.java | 18 + .../data/filters/model/MediaObject.java | 587 +++++ .../data/filters/model/MediaSubscription.java | 67 + .../filters/model/MedicalAudienceType.java | 17 + .../data/filters/model/MedicalCause.java | 42 + .../data/filters/model/MedicalCode.java | 69 + .../data/filters/model/MedicalCondition.java | 511 +++++ .../filters/model/MedicalConditionStage.java | 67 + .../model/MedicalContraindication.java | 17 + .../data/filters/model/MedicalDevice.java | 171 ++ .../filters/model/MedicalDevicePurpose.java | 17 + .../data/filters/model/MedicalEntity.java | 239 ++ .../filters/model/MedicalEnumeration.java | 17 + .../filters/model/MedicalEvidenceLevel.java | 17 + .../data/filters/model/MedicalGuideline.java | 117 + .../model/MedicalImagingTechnique.java | 17 + .../data/filters/model/MedicalIntangible.java | 17 + .../MedicalObservationalStudyDesign.java | 17 + .../data/filters/model/MedicalProcedure.java | 187 ++ .../filters/model/MedicalProcedureType.java | 17 + .../data/filters/model/MedicalRiskFactor.java | 42 + .../data/filters/model/MedicalSign.java | 67 + .../filters/model/MedicalSignOrSymptom.java | 66 + .../data/filters/model/MedicalSpecialty.java | 17 + .../data/filters/model/MedicalStudy.java | 162 ++ .../filters/model/MedicalStudyStatus.java | 17 + .../data/filters/model/MedicalTest.java | 150 ++ .../data/filters/model/MedicalTherapy.java | 100 + .../filters/model/MedicalTrialDesign.java | 18 + .../data/filters/model/MedicineSystem.java | 17 + .../data/filters/model/MemberProgram.java | 65 + .../data/filters/model/MemberProgramTier.java | 154 ++ .../data/filters/model/MenuItem.java | 130 ++ .../data/filters/model/MenuSection.java | 60 + .../model/MerchantReturnEnumeration.java | 18 + .../filters/model/MerchantReturnPolicy.java | 661 ++++++ .../MerchantReturnPolicySeasonalOverride.java | 302 +++ .../data/filters/model/MonetaryAmount.java | 202 ++ .../model/MonetaryAmountDistribution.java | 42 + .../data/filters/model/NewsArticle.java | 141 ++ .../filters/model/NutritionInformation.java | 271 +++ .../data/filters/model/Occupation.java | 311 +++ .../OccupationalExperienceRequirements.java | 46 + .../resources/data/filters/model/Offer.java | 1646 ++++++++++++++ .../data/filters/model/OfferCatalog.java | 16 + .../filters/model/OfferItemCondition.java | 16 + .../filters/model/OfferShippingDetails.java | 367 +++ .../model/OpeningHoursSpecification.java | 157 ++ .../data/filters/model/OperatingSystem.java | 18 + .../data/filters/model/OrderStatus.java | 16 + .../data/filters/model/Organization.java | 280 +++ .../data/filters/model/PaymentCard.java | 158 ++ .../data/filters/model/PaymentMethod.java | 46 + .../data/filters/model/PaymentMethodType.java | 18 + .../data/filters/model/PaymentStatusType.java | 16 + .../data/filters/model/PerformingGroup.java | 16 + .../resources/data/filters/model/Person.java | 1776 +++++++++++++++ .../data/filters/model/Photograph.java | 16 + .../model/PhysicalActivityCategory.java | 17 + .../data/filters/model/PhysicalExam.java | 17 + .../resources/data/filters/model/Place.java | 1190 ++++++++++ .../data/filters/model/PostalAddress.java | 189 ++ .../model/PostalCodeRangeSpecification.java | 66 + .../model/PriceComponentTypeEnumeration.java | 18 + .../filters/model/PriceSpecification.java | 324 +++ .../filters/model/PriceTypeEnumeration.java | 18 + .../resources/data/filters/model/Product.java | 1840 +++++++++++++++ .../data/filters/model/ProductGroup.java | 112 + .../data/filters/model/ProductModel.java | 98 + .../data/filters/model/ProgramMembership.java | 198 ++ .../data/filters/model/Property.java | 130 ++ .../data/filters/model/PropertyValue.java | 428 ++++ .../data/filters/model/QualitativeValue.java | 263 +++ .../data/filters/model/QuantitativeValue.java | 270 +++ .../model/QuantitativeValueDistribution.java | 179 ++ .../data/filters/model/Quantity.java | 16 + .../resources/data/filters/model/Rating.java | 187 ++ .../filters/model/RefundTypeEnumeration.java | 18 + .../filters/model/RepaymentSpecification.java | 180 ++ .../filters/model/ReservationStatusType.java | 16 + .../data/filters/model/RestrictedDiet.java | 16 + .../filters/model/ReturnFeesEnumeration.java | 18 + .../model/ReturnLabelSourceEnumeration.java | 18 + .../model/ReturnMethodEnumeration.java | 18 + .../resources/data/filters/model/Review.java | 355 +++ .../data/filters/model/RuntimePlatform.java | 18 + .../data/filters/model/Schedule.java | 447 ++++ .../resources/data/filters/model/Service.java | 730 ++++++ .../data/filters/model/ServiceChannel.java | 198 ++ .../data/filters/model/ServicePeriod.java | 124 + .../filters/model/ShippingConditions.java | 407 ++++ .../filters/model/ShippingDeliveryTime.java | 186 ++ .../filters/model/ShippingRateSettings.java | 221 ++ .../data/filters/model/ShippingService.java | 158 ++ .../filters/model/SizeGroupEnumeration.java | 18 + .../data/filters/model/SizeSpecification.java | 201 ++ .../filters/model/SizeSystemEnumeration.java | 18 + .../filters/model/SoftwareApplication.java | 621 +++++ .../filters/model/SpeakableSpecification.java | 67 + .../data/filters/model/Specialty.java | 16 + .../filters/model/StatisticalVariable.java | 315 +++ .../data/filters/model/StatusEnumeration.java | 17 + .../filters/model/SteeringPositionValue.java | 17 + .../data/filters/model/StructuredValue.java | 16 + .../data/filters/model/Substance.java | 67 + .../filters/model/SuperficialAnatomy.java | 149 ++ .../resources/data/filters/model/Taxon.java | 179 ++ .../data/filters/model/TextObject.java | 16 + .../filters/model/TherapeuticProcedure.java | 92 + .../resources/data/filters/model/Thing.java | 237 ++ .../filters/model/TierBenefitEnumeration.java | 18 + .../resources/data/filters/model/Trip.java | 274 +++ .../filters/model/TypeAndQuantityNode.java | 157 ++ .../filters/model/UnitPriceSpecification.java | 255 +++ .../data/filters/model/VirtualLocation.java | 18 + .../data/filters/model/WarrantyPromise.java | 67 + .../data/filters/model/WarrantyScope.java | 18 + .../WearableMeasurementTypeEnumeration.java | 18 + .../model/WearableSizeGroupEnumeration.java | 18 + .../model/WearableSizeSystemEnumeration.java | 18 + .../data/filters/model/WebContent.java | 18 + .../resources/data/filters/model/WebPage.java | 310 +++ .../data/filters/model/WebPageElement.java | 66 + .../resources/data/filters/model/WebSite.java | 41 + .../data/filters/model/datatype/Boolean.java | 26 + .../model/datatype/CssSelectorType.java | 28 + .../data/filters/model/datatype/DataType.java | 36 + .../data/filters/model/datatype/Date.java | 26 + .../data/filters/model/datatype/DateTime.java | 26 + .../data/filters/model/datatype/Integer.java | 26 + .../data/filters/model/datatype/Number.java | 26 + .../data/filters/model/datatype/Text.java | 26 + .../data/filters/model/datatype/Time.java | 26 + .../data/filters/model/datatype/URL.java | 26 + .../filters/model/datatype/XPathType.java | 28 + .../data/filters/model/impl/ActionImpl.java | 467 ++++ .../model/impl/ActionStatusTypeEnum.java | 248 ++ .../model/impl/AdministrativeAreaImpl.java | 1109 +++++++++ .../impl/AdultOrientedEnumerationEnum.java | 255 +++ .../model/impl/AggregateOfferImpl.java | 1372 +++++++++++ .../model/impl/AggregateRatingImpl.java | 377 +++ .../model/impl/AnatomicalStructureImpl.java | 488 ++++ .../model/impl/AnatomicalSystemImpl.java | 442 ++++ .../data/filters/model/impl/ArticleImpl.java | 353 +++ .../data/filters/model/impl/AudienceImpl.java | 230 ++ .../data/filters/model/impl/BedTypeEnum.java | 389 ++++ .../filters/model/impl/BioChemEntityImpl.java | 480 ++++ .../BodyMeasurementTypeEnumerationEnum.java | 259 +++ .../data/filters/model/impl/BrandImpl.java | 271 +++ .../model/impl/BreadcrumbListImpl.java | 282 +++ .../model/impl/BusinessEntityTypeEnum.java | 245 ++ .../model/impl/BusinessFunctionEnum.java | 245 ++ .../filters/model/impl/CategoryCodeImpl.java | 295 +++ .../model/impl/CategoryCodeSetImpl.java | 250 ++ .../filters/model/impl/CertificationImpl.java | 437 ++++ .../CertificationStatusEnumerationEnum.java | 247 ++ .../model/impl/CivicStructureImpl.java | 1126 +++++++++ .../data/filters/model/impl/ClaimImpl.java | 257 +++ .../data/filters/model/impl/ClassImpl.java | 224 ++ .../model/impl/ConstraintNodeImpl.java | 239 ++ .../filters/model/impl/ContactPointImpl.java | 405 ++++ .../model/impl/ContactPointOptionEnum.java | 245 ++ .../data/filters/model/impl/CountryImpl.java | 1110 +++++++++ .../filters/model/impl/CreativeWorkImpl.java | 194 ++ .../filters/model/impl/CreditCardImpl.java | 1065 +++++++++ .../filters/model/impl/DDxElementImpl.java | 386 ++++ .../filters/model/impl/DataCatalogImpl.java | 275 +++ .../filters/model/impl/DataDownloadImpl.java | 659 ++++++ .../data/filters/model/impl/DataFeedImpl.java | 421 ++++ .../filters/model/impl/DataFeedItemImpl.java | 280 +++ .../data/filters/model/impl/DatasetImpl.java | 394 ++++ .../filters/model/impl/DayOfWeekEnum.java | 255 +++ .../filters/model/impl/DefinedRegionImpl.java | 1222 ++++++++++ .../filters/model/impl/DefinedTermImpl.java | 254 +++ .../model/impl/DefinedTermSetImpl.java | 231 ++ .../impl/DeliveryChargeSpecificationImpl.java | 514 +++++ .../model/impl/DeliveryMethodEnum.java | 248 ++ .../data/filters/model/impl/DemandImpl.java | 905 ++++++++ .../impl/DigitalPlatformEnumerationEnum.java | 250 ++ .../data/filters/model/impl/DistanceImpl.java | 196 ++ .../filters/model/impl/DoseScheduleImpl.java | 425 ++++ .../DriveWheelConfigurationValueEnum.java | 392 ++++ .../filters/model/impl/DrugClassImpl.java | 367 +++ .../model/impl/DrugCostCategoryEnum.java | 248 ++ .../data/filters/model/impl/DrugImpl.java | 2024 +++++++++++++++++ .../model/impl/DrugLegalStatusImpl.java | 367 +++ .../model/impl/DrugPregnancyCategoryEnum.java | 251 ++ .../impl/DrugPrescriptionStatusEnum.java | 247 ++ .../filters/model/impl/DrugStrengthImpl.java | 438 ++++ .../data/filters/model/impl/DurationImpl.java | 196 ++ .../EUEnergyEfficiencyEnumerationEnum.java | 256 +++ ...EducationalOccupationalCredentialImpl.java | 328 +++ .../impl/EducationalOrganizationImpl.java | 1306 +++++++++++ .../impl/EnergyConsumptionDetailsImpl.java | 250 ++ .../impl/EnergyEfficiencyEnumerationEnum.java | 247 ++ .../data/filters/model/impl/EnergyImpl.java | 196 ++ ...gyStarEnergyEfficiencyEnumerationEnum.java | 247 ++ .../filters/model/impl/EntryPointImpl.java | 326 +++ .../filters/model/impl/EnumerationImpl.java | 223 ++ .../EventAttendanceModeEnumerationEnum.java | 248 ++ .../data/filters/model/impl/EventImpl.java | 1054 +++++++++ .../model/impl/EventStatusTypeEnum.java | 249 ++ .../model/impl/FinancialProductImpl.java | 791 +++++++ .../impl/FulfillmentTypeEnumerationEnum.java | 250 ++ .../model/impl/GameServerStatusEnum.java | 248 ++ .../filters/model/impl/GenderTypeEnum.java | 245 ++ .../data/filters/model/impl/GeneImpl.java | 563 +++++ .../model/impl/GeoCoordinatesImpl.java | 326 +++ .../data/filters/model/impl/GeoShapeImpl.java | 351 +++ .../model/impl/GeospatialGeometryImpl.java | 418 ++++ .../impl/GovernmentBenefitsTypeEnum.java | 253 +++ .../data/filters/model/impl/GrantImpl.java | 294 +++ .../model/impl/HealthInsurancePlanImpl.java | 358 +++ ...ealthPlanCostSharingSpecificationImpl.java | 284 +++ .../model/impl/HealthPlanFormularyImpl.java | 255 +++ .../model/impl/HealthPlanNetworkImpl.java | 255 +++ .../data/filters/model/impl/HowToImpl.java | 397 ++++ .../filters/model/impl/HowToItemImpl.java | 298 +++ .../filters/model/impl/HowToSectionImpl.java | 380 ++++ .../filters/model/impl/HowToStepImpl.java | 354 +++ .../filters/model/impl/HowToSupplyImpl.java | 322 +++ .../filters/model/impl/HowToToolImpl.java | 299 +++ .../filters/model/impl/ImageObjectImpl.java | 673 ++++++ .../model/impl/InfectiousAgentClassEnum.java | 251 ++ .../filters/model/impl/IntangibleImpl.java | 194 ++ .../model/impl/InteractionCounterImpl.java | 335 +++ .../model/impl/ItemAvailabilityEnum.java | 255 +++ .../data/filters/model/impl/ItemListImpl.java | 280 +++ .../model/impl/ItemListOrderTypeEnum.java | 246 ++ .../data/filters/model/impl/LanguageImpl.java | 195 ++ .../model/impl/LegalForceStatusEnum.java | 251 ++ .../model/impl/LifestyleModificationImpl.java | 349 +++ .../data/filters/model/impl/ListItemImpl.java | 269 +++ .../filters/model/impl/LoanOrCreditImpl.java | 964 ++++++++ .../LocationFeatureSpecificationImpl.java | 500 ++++ .../model/impl/MapCategoryTypeEnum.java | 247 ++ .../data/filters/model/impl/MapImpl.java | 212 ++ .../data/filters/model/impl/MassImpl.java | 196 ++ .../model/impl/MaximumDoseScheduleImpl.java | 426 ++++ .../model/impl/MeasurementMethodEnumEnum.java | 246 ++ .../impl/MeasurementTypeEnumerationEnum.java | 247 ++ .../filters/model/impl/MediaObjectImpl.java | 595 +++++ .../model/impl/MediaSubscriptionImpl.java | 231 ++ .../model/impl/MedicalAudienceTypeEnum.java | 247 ++ .../filters/model/impl/MedicalCauseImpl.java | 366 +++ .../filters/model/impl/MedicalCodeImpl.java | 466 ++++ .../model/impl/MedicalConditionImpl.java | 697 ++++++ .../model/impl/MedicalConditionStageImpl.java | 385 ++++ .../impl/MedicalContraindicationImpl.java | 349 +++ .../filters/model/impl/MedicalDeviceImpl.java | 457 ++++ .../model/impl/MedicalDevicePurposeEnum.java | 247 ++ .../filters/model/impl/MedicalEntityImpl.java | 348 +++ .../model/impl/MedicalEnumerationEnum.java | 246 ++ .../model/impl/MedicalEvidenceLevelEnum.java | 248 ++ .../model/impl/MedicalGuidelineImpl.java | 418 ++++ .../impl/MedicalImagingTechniqueEnum.java | 251 ++ .../model/impl/MedicalIntangibleImpl.java | 349 +++ .../MedicalObservationalStudyDesignEnum.java | 251 ++ .../model/impl/MedicalProcedureImpl.java | 468 ++++ .../model/impl/MedicalProcedureTypeEnum.java | 247 ++ .../model/impl/MedicalRiskFactorImpl.java | 366 +++ .../filters/model/impl/MedicalSignImpl.java | 733 ++++++ .../model/impl/MedicalSignOrSymptomImpl.java | 697 ++++++ .../model/impl/MedicalSpecialtyEnum.java | 288 +++ .../filters/model/impl/MedicalStudyImpl.java | 451 ++++ .../model/impl/MedicalStudyStatusEnum.java | 255 +++ .../filters/model/impl/MedicalTestImpl.java | 443 ++++ .../model/impl/MedicalTherapyImpl.java | 580 +++++ .../model/impl/MedicalTrialDesignEnum.java | 255 +++ .../model/impl/MedicineSystemEnum.java | 251 ++ .../filters/model/impl/MemberProgramImpl.java | 232 ++ .../model/impl/MemberProgramTierImpl.java | 290 +++ .../data/filters/model/impl/MenuItemImpl.java | 278 +++ .../filters/model/impl/MenuSectionImpl.java | 229 ++ .../impl/MerchantReturnEnumerationEnum.java | 249 ++ .../model/impl/MerchantReturnPolicyImpl.java | 610 +++++ ...chantReturnPolicySeasonalOverrideImpl.java | 383 ++++ .../impl/MonetaryAmountDistributionImpl.java | 325 +++ .../model/impl/MonetaryAmountImpl.java | 326 +++ .../filters/model/impl/NewsArticleImpl.java | 442 ++++ .../model/impl/NutritionInformationImpl.java | 402 ++++ .../filters/model/impl/OccupationImpl.java | 374 +++ ...ccupationalExperienceRequirementsImpl.java | 215 ++ .../filters/model/impl/OfferCatalogImpl.java | 281 +++ .../data/filters/model/impl/OfferImpl.java | 1288 +++++++++++ .../model/impl/OfferItemConditionEnum.java | 247 ++ .../model/impl/OfferShippingDetailsImpl.java | 430 ++++ .../impl/OpeningHoursSpecificationImpl.java | 298 +++ .../model/impl/OperatingSystemImpl.java | 683 ++++++ .../filters/model/impl/OrderStatusEnum.java | 252 ++ .../filters/model/impl/OrganizationImpl.java | 355 +++ .../filters/model/impl/PaymentCardImpl.java | 891 ++++++++ .../filters/model/impl/PaymentMethodImpl.java | 215 ++ .../model/impl/PaymentMethodTypeEnum.java | 253 +++ .../model/impl/PaymentStatusTypeEnum.java | 249 ++ .../model/impl/PerformingGroupImpl.java | 356 +++ .../data/filters/model/impl/PersonImpl.java | 1484 ++++++++++++ .../filters/model/impl/PhotographImpl.java | 194 ++ .../impl/PhysicalActivityCategoryEnum.java | 251 ++ .../filters/model/impl/PhysicalExamEnum.java | 478 ++++ .../data/filters/model/impl/PlaceImpl.java | 1108 +++++++++ .../filters/model/impl/PostalAddressImpl.java | 536 +++++ .../PostalCodeRangeSpecificationImpl.java | 231 ++ .../PriceComponentTypeEnumerationEnum.java | 251 ++ .../model/impl/PriceSpecificationImpl.java | 410 ++++ .../model/impl/PriceTypeEnumerationEnum.java | 253 +++ .../filters/model/impl/ProductGroupImpl.java | 1435 ++++++++++++ .../data/filters/model/impl/ProductImpl.java | 1376 +++++++++++ .../filters/model/impl/ProductModelImpl.java | 1410 ++++++++++++ .../model/impl/ProgramMembershipImpl.java | 332 +++ .../data/filters/model/impl/PropertyImpl.java | 275 +++ .../filters/model/impl/PropertyValueImpl.java | 436 ++++ .../model/impl/QualitativeValueEnum.java | 389 ++++ .../QuantitativeValueDistributionImpl.java | 307 +++ .../model/impl/QuantitativeValueImpl.java | 369 +++ .../data/filters/model/impl/QuantityImpl.java | 195 ++ .../data/filters/model/impl/RatingImpl.java | 324 +++ .../model/impl/RefundTypeEnumerationEnum.java | 248 ++ .../impl/RepaymentSpecificationImpl.java | 291 +++ .../model/impl/ReservationStatusTypeEnum.java | 248 ++ .../model/impl/RestrictedDietEnum.java | 254 +++ .../model/impl/ReturnFeesEnumerationEnum.java | 250 ++ .../ReturnLabelSourceEnumerationEnum.java | 248 ++ .../impl/ReturnMethodEnumerationEnum.java | 249 ++ .../data/filters/model/impl/ReviewImpl.java | 383 ++++ .../model/impl/RuntimePlatformImpl.java | 683 ++++++ .../data/filters/model/impl/ScheduleImpl.java | 467 ++++ .../model/impl/ServiceChannelImpl.java | 342 +++ .../data/filters/model/impl/ServiceImpl.java | 721 ++++++ .../filters/model/impl/ServicePeriodImpl.java | 264 +++ .../model/impl/ShippingConditionsImpl.java | 441 ++++ .../model/impl/ShippingDeliveryTimeImpl.java | 285 +++ .../model/impl/ShippingRateSettingsImpl.java | 331 +++ .../model/impl/ShippingServiceImpl.java | 276 +++ .../model/impl/SizeGroupEnumerationEnum.java | 247 ++ .../model/impl/SizeSpecificationEnum.java | 485 ++++ .../model/impl/SizeSystemEnumerationEnum.java | 249 ++ .../model/impl/SoftwareApplicationImpl.java | 681 ++++++ .../impl/SpeakableSpecificationImpl.java | 232 ++ .../filters/model/impl/SpecialtyEnum.java | 245 ++ .../model/impl/StatisticalVariableImpl.java | 397 ++++ .../model/impl/StatusEnumerationEnum.java | 246 ++ .../model/impl/SteeringPositionValueEnum.java | 390 ++++ .../model/impl/StructuredValueImpl.java | 195 ++ .../filters/model/impl/SubstanceImpl.java | 384 ++++ .../model/impl/SuperficialAnatomyImpl.java | 443 ++++ .../data/filters/model/impl/TaxonImpl.java | 292 +++ .../filters/model/impl/TextObjectImpl.java | 595 +++++ .../model/impl/TherapeuticProcedureImpl.java | 522 +++++ .../data/filters/model/impl/ThingImpl.java | 193 ++ .../impl/TierBenefitEnumerationEnum.java | 249 ++ .../data/filters/model/impl/TripImpl.java | 363 +++ .../model/impl/TypeAndQuantityNodeImpl.java | 296 +++ .../impl/UnitPriceSpecificationImpl.java | 569 +++++ .../model/impl/VirtualLocationImpl.java | 197 ++ .../model/impl/WarrantyPromiseImpl.java | 233 ++ .../filters/model/impl/WarrantyScopeEnum.java | 245 ++ ...earableMeasurementTypeEnumerationEnum.java | 258 +++ .../WearableSizeGroupEnumerationEnum.java | 263 +++ .../WearableSizeSystemEnumerationEnum.java | 260 +++ .../filters/model/impl/WebContentImpl.java | 196 ++ .../model/impl/WebPageElementImpl.java | 230 ++ .../data/filters/model/impl/WebPageImpl.java | 384 ++++ .../data/filters/model/impl/WebSiteImpl.java | 211 ++ 484 files changed, 127484 insertions(+), 44 deletions(-) create mode 100644 generator/src/test/java/com/weedow/schemaorg/generator/core/GeneratorOptionsTest.java create mode 100644 generator/src/test/java/com/weedow/schemaorg/generator/model/TypeTest.java create mode 100644 generator/src/test/resources/data/filters/model/Action.java create mode 100644 generator/src/test/resources/data/filters/model/ActionStatusType.java create mode 100644 generator/src/test/resources/data/filters/model/AdministrativeArea.java create mode 100644 generator/src/test/resources/data/filters/model/AdultOrientedEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/AggregateOffer.java create mode 100644 generator/src/test/resources/data/filters/model/AggregateRating.java create mode 100644 generator/src/test/resources/data/filters/model/AnatomicalStructure.java create mode 100644 generator/src/test/resources/data/filters/model/AnatomicalSystem.java create mode 100644 generator/src/test/resources/data/filters/model/Article.java create mode 100644 generator/src/test/resources/data/filters/model/Audience.java create mode 100644 generator/src/test/resources/data/filters/model/BedType.java create mode 100644 generator/src/test/resources/data/filters/model/BioChemEntity.java create mode 100644 generator/src/test/resources/data/filters/model/BodyMeasurementTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/Brand.java create mode 100644 generator/src/test/resources/data/filters/model/BreadcrumbList.java create mode 100644 generator/src/test/resources/data/filters/model/BusinessEntityType.java create mode 100644 generator/src/test/resources/data/filters/model/BusinessFunction.java create mode 100644 generator/src/test/resources/data/filters/model/CategoryCode.java create mode 100644 generator/src/test/resources/data/filters/model/CategoryCodeSet.java create mode 100644 generator/src/test/resources/data/filters/model/Certification.java create mode 100644 generator/src/test/resources/data/filters/model/CertificationStatusEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/CivicStructure.java create mode 100644 generator/src/test/resources/data/filters/model/Claim.java create mode 100644 generator/src/test/resources/data/filters/model/Class.java create mode 100644 generator/src/test/resources/data/filters/model/ConstraintNode.java create mode 100644 generator/src/test/resources/data/filters/model/ContactPoint.java create mode 100644 generator/src/test/resources/data/filters/model/ContactPointOption.java create mode 100644 generator/src/test/resources/data/filters/model/Country.java create mode 100644 generator/src/test/resources/data/filters/model/CreativeWork.java create mode 100644 generator/src/test/resources/data/filters/model/CreditCard.java create mode 100644 generator/src/test/resources/data/filters/model/DDxElement.java create mode 100644 generator/src/test/resources/data/filters/model/DataCatalog.java create mode 100644 generator/src/test/resources/data/filters/model/DataDownload.java create mode 100644 generator/src/test/resources/data/filters/model/DataFeed.java create mode 100644 generator/src/test/resources/data/filters/model/DataFeedItem.java create mode 100644 generator/src/test/resources/data/filters/model/Dataset.java create mode 100644 generator/src/test/resources/data/filters/model/DayOfWeek.java create mode 100644 generator/src/test/resources/data/filters/model/DefinedRegion.java create mode 100644 generator/src/test/resources/data/filters/model/DefinedTerm.java create mode 100644 generator/src/test/resources/data/filters/model/DefinedTermSet.java create mode 100644 generator/src/test/resources/data/filters/model/DeliveryChargeSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/DeliveryMethod.java create mode 100644 generator/src/test/resources/data/filters/model/Demand.java create mode 100644 generator/src/test/resources/data/filters/model/DigitalPlatformEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/Distance.java create mode 100644 generator/src/test/resources/data/filters/model/DoseSchedule.java create mode 100644 generator/src/test/resources/data/filters/model/DriveWheelConfigurationValue.java create mode 100644 generator/src/test/resources/data/filters/model/Drug.java create mode 100644 generator/src/test/resources/data/filters/model/DrugClass.java create mode 100644 generator/src/test/resources/data/filters/model/DrugCostCategory.java create mode 100644 generator/src/test/resources/data/filters/model/DrugLegalStatus.java create mode 100644 generator/src/test/resources/data/filters/model/DrugPregnancyCategory.java create mode 100644 generator/src/test/resources/data/filters/model/DrugPrescriptionStatus.java create mode 100644 generator/src/test/resources/data/filters/model/DrugStrength.java create mode 100644 generator/src/test/resources/data/filters/model/Duration.java create mode 100644 generator/src/test/resources/data/filters/model/EUEnergyEfficiencyEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/EducationalOccupationalCredential.java create mode 100644 generator/src/test/resources/data/filters/model/EducationalOrganization.java create mode 100644 generator/src/test/resources/data/filters/model/Energy.java create mode 100644 generator/src/test/resources/data/filters/model/EnergyConsumptionDetails.java create mode 100644 generator/src/test/resources/data/filters/model/EnergyEfficiencyEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/EnergyStarEnergyEfficiencyEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/EntryPoint.java create mode 100644 generator/src/test/resources/data/filters/model/Enumeration.java create mode 100644 generator/src/test/resources/data/filters/model/Event.java create mode 100644 generator/src/test/resources/data/filters/model/EventAttendanceModeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/EventStatusType.java create mode 100644 generator/src/test/resources/data/filters/model/FinancialProduct.java create mode 100644 generator/src/test/resources/data/filters/model/FulfillmentTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/GameServerStatus.java create mode 100644 generator/src/test/resources/data/filters/model/GenderType.java create mode 100644 generator/src/test/resources/data/filters/model/Gene.java create mode 100644 generator/src/test/resources/data/filters/model/GeoCoordinates.java create mode 100644 generator/src/test/resources/data/filters/model/GeoShape.java create mode 100644 generator/src/test/resources/data/filters/model/GeospatialGeometry.java create mode 100644 generator/src/test/resources/data/filters/model/GovernmentBenefitsType.java create mode 100644 generator/src/test/resources/data/filters/model/Grant.java create mode 100644 generator/src/test/resources/data/filters/model/HealthInsurancePlan.java create mode 100644 generator/src/test/resources/data/filters/model/HealthPlanCostSharingSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/HealthPlanFormulary.java create mode 100644 generator/src/test/resources/data/filters/model/HealthPlanNetwork.java create mode 100644 generator/src/test/resources/data/filters/model/HowTo.java create mode 100644 generator/src/test/resources/data/filters/model/HowToItem.java create mode 100644 generator/src/test/resources/data/filters/model/HowToSection.java create mode 100644 generator/src/test/resources/data/filters/model/HowToStep.java create mode 100644 generator/src/test/resources/data/filters/model/HowToSupply.java create mode 100644 generator/src/test/resources/data/filters/model/HowToTool.java create mode 100644 generator/src/test/resources/data/filters/model/ImageObject.java create mode 100644 generator/src/test/resources/data/filters/model/InfectiousAgentClass.java create mode 100644 generator/src/test/resources/data/filters/model/Intangible.java create mode 100644 generator/src/test/resources/data/filters/model/InteractionCounter.java create mode 100644 generator/src/test/resources/data/filters/model/ItemAvailability.java create mode 100644 generator/src/test/resources/data/filters/model/ItemList.java create mode 100644 generator/src/test/resources/data/filters/model/ItemListOrderType.java create mode 100644 generator/src/test/resources/data/filters/model/Language.java create mode 100644 generator/src/test/resources/data/filters/model/LegalForceStatus.java create mode 100644 generator/src/test/resources/data/filters/model/LifestyleModification.java create mode 100644 generator/src/test/resources/data/filters/model/ListItem.java create mode 100644 generator/src/test/resources/data/filters/model/LoanOrCredit.java create mode 100644 generator/src/test/resources/data/filters/model/LocationFeatureSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/Map.java create mode 100644 generator/src/test/resources/data/filters/model/MapCategoryType.java create mode 100644 generator/src/test/resources/data/filters/model/Mass.java create mode 100644 generator/src/test/resources/data/filters/model/MaximumDoseSchedule.java create mode 100644 generator/src/test/resources/data/filters/model/MeasurementMethodEnum.java create mode 100644 generator/src/test/resources/data/filters/model/MeasurementTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/MediaObject.java create mode 100644 generator/src/test/resources/data/filters/model/MediaSubscription.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalAudienceType.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalCause.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalCode.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalCondition.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalConditionStage.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalContraindication.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalDevice.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalDevicePurpose.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalEntity.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalEvidenceLevel.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalGuideline.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalImagingTechnique.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalIntangible.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalObservationalStudyDesign.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalProcedure.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalProcedureType.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalRiskFactor.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalSign.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalSignOrSymptom.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalSpecialty.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalStudy.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalStudyStatus.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalTest.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalTherapy.java create mode 100644 generator/src/test/resources/data/filters/model/MedicalTrialDesign.java create mode 100644 generator/src/test/resources/data/filters/model/MedicineSystem.java create mode 100644 generator/src/test/resources/data/filters/model/MemberProgram.java create mode 100644 generator/src/test/resources/data/filters/model/MemberProgramTier.java create mode 100644 generator/src/test/resources/data/filters/model/MenuItem.java create mode 100644 generator/src/test/resources/data/filters/model/MenuSection.java create mode 100644 generator/src/test/resources/data/filters/model/MerchantReturnEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/MerchantReturnPolicy.java create mode 100644 generator/src/test/resources/data/filters/model/MerchantReturnPolicySeasonalOverride.java create mode 100644 generator/src/test/resources/data/filters/model/MonetaryAmount.java create mode 100644 generator/src/test/resources/data/filters/model/MonetaryAmountDistribution.java create mode 100644 generator/src/test/resources/data/filters/model/NewsArticle.java create mode 100644 generator/src/test/resources/data/filters/model/NutritionInformation.java create mode 100644 generator/src/test/resources/data/filters/model/Occupation.java create mode 100644 generator/src/test/resources/data/filters/model/OccupationalExperienceRequirements.java create mode 100644 generator/src/test/resources/data/filters/model/Offer.java create mode 100644 generator/src/test/resources/data/filters/model/OfferCatalog.java create mode 100644 generator/src/test/resources/data/filters/model/OfferItemCondition.java create mode 100644 generator/src/test/resources/data/filters/model/OfferShippingDetails.java create mode 100644 generator/src/test/resources/data/filters/model/OpeningHoursSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/OperatingSystem.java create mode 100644 generator/src/test/resources/data/filters/model/OrderStatus.java create mode 100644 generator/src/test/resources/data/filters/model/Organization.java create mode 100644 generator/src/test/resources/data/filters/model/PaymentCard.java create mode 100644 generator/src/test/resources/data/filters/model/PaymentMethod.java create mode 100644 generator/src/test/resources/data/filters/model/PaymentMethodType.java create mode 100644 generator/src/test/resources/data/filters/model/PaymentStatusType.java create mode 100644 generator/src/test/resources/data/filters/model/PerformingGroup.java create mode 100644 generator/src/test/resources/data/filters/model/Person.java create mode 100644 generator/src/test/resources/data/filters/model/Photograph.java create mode 100644 generator/src/test/resources/data/filters/model/PhysicalActivityCategory.java create mode 100644 generator/src/test/resources/data/filters/model/PhysicalExam.java create mode 100644 generator/src/test/resources/data/filters/model/Place.java create mode 100644 generator/src/test/resources/data/filters/model/PostalAddress.java create mode 100644 generator/src/test/resources/data/filters/model/PostalCodeRangeSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/PriceComponentTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/PriceSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/PriceTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/Product.java create mode 100644 generator/src/test/resources/data/filters/model/ProductGroup.java create mode 100644 generator/src/test/resources/data/filters/model/ProductModel.java create mode 100644 generator/src/test/resources/data/filters/model/ProgramMembership.java create mode 100644 generator/src/test/resources/data/filters/model/Property.java create mode 100644 generator/src/test/resources/data/filters/model/PropertyValue.java create mode 100644 generator/src/test/resources/data/filters/model/QualitativeValue.java create mode 100644 generator/src/test/resources/data/filters/model/QuantitativeValue.java create mode 100644 generator/src/test/resources/data/filters/model/QuantitativeValueDistribution.java create mode 100644 generator/src/test/resources/data/filters/model/Quantity.java create mode 100644 generator/src/test/resources/data/filters/model/Rating.java create mode 100644 generator/src/test/resources/data/filters/model/RefundTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/RepaymentSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/ReservationStatusType.java create mode 100644 generator/src/test/resources/data/filters/model/RestrictedDiet.java create mode 100644 generator/src/test/resources/data/filters/model/ReturnFeesEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/ReturnLabelSourceEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/ReturnMethodEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/Review.java create mode 100644 generator/src/test/resources/data/filters/model/RuntimePlatform.java create mode 100644 generator/src/test/resources/data/filters/model/Schedule.java create mode 100644 generator/src/test/resources/data/filters/model/Service.java create mode 100644 generator/src/test/resources/data/filters/model/ServiceChannel.java create mode 100644 generator/src/test/resources/data/filters/model/ServicePeriod.java create mode 100644 generator/src/test/resources/data/filters/model/ShippingConditions.java create mode 100644 generator/src/test/resources/data/filters/model/ShippingDeliveryTime.java create mode 100644 generator/src/test/resources/data/filters/model/ShippingRateSettings.java create mode 100644 generator/src/test/resources/data/filters/model/ShippingService.java create mode 100644 generator/src/test/resources/data/filters/model/SizeGroupEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/SizeSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/SizeSystemEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/SoftwareApplication.java create mode 100644 generator/src/test/resources/data/filters/model/SpeakableSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/Specialty.java create mode 100644 generator/src/test/resources/data/filters/model/StatisticalVariable.java create mode 100644 generator/src/test/resources/data/filters/model/StatusEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/SteeringPositionValue.java create mode 100644 generator/src/test/resources/data/filters/model/StructuredValue.java create mode 100644 generator/src/test/resources/data/filters/model/Substance.java create mode 100644 generator/src/test/resources/data/filters/model/SuperficialAnatomy.java create mode 100644 generator/src/test/resources/data/filters/model/Taxon.java create mode 100644 generator/src/test/resources/data/filters/model/TextObject.java create mode 100644 generator/src/test/resources/data/filters/model/TherapeuticProcedure.java create mode 100644 generator/src/test/resources/data/filters/model/Thing.java create mode 100644 generator/src/test/resources/data/filters/model/TierBenefitEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/Trip.java create mode 100644 generator/src/test/resources/data/filters/model/TypeAndQuantityNode.java create mode 100644 generator/src/test/resources/data/filters/model/UnitPriceSpecification.java create mode 100644 generator/src/test/resources/data/filters/model/VirtualLocation.java create mode 100644 generator/src/test/resources/data/filters/model/WarrantyPromise.java create mode 100644 generator/src/test/resources/data/filters/model/WarrantyScope.java create mode 100644 generator/src/test/resources/data/filters/model/WearableMeasurementTypeEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/WearableSizeGroupEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/WearableSizeSystemEnumeration.java create mode 100644 generator/src/test/resources/data/filters/model/WebContent.java create mode 100644 generator/src/test/resources/data/filters/model/WebPage.java create mode 100644 generator/src/test/resources/data/filters/model/WebPageElement.java create mode 100644 generator/src/test/resources/data/filters/model/WebSite.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/Boolean.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/CssSelectorType.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/DataType.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/Date.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/DateTime.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/Integer.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/Number.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/Text.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/Time.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/URL.java create mode 100644 generator/src/test/resources/data/filters/model/datatype/XPathType.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ActionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ActionStatusTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AdministrativeAreaImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AdultOrientedEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AggregateOfferImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AggregateRatingImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AnatomicalStructureImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AnatomicalSystemImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ArticleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/AudienceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BedTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BioChemEntityImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BodyMeasurementTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BrandImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BreadcrumbListImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BusinessEntityTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/BusinessFunctionEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CategoryCodeImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CategoryCodeSetImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CertificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CertificationStatusEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CivicStructureImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ClaimImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ClassImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ConstraintNodeImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ContactPointImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ContactPointOptionEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CountryImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CreativeWorkImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/CreditCardImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DDxElementImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DataCatalogImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DataDownloadImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DataFeedImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DataFeedItemImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DatasetImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DayOfWeekEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DefinedRegionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DefinedTermImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DefinedTermSetImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DeliveryChargeSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DeliveryMethodEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DemandImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DigitalPlatformEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DistanceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DoseScheduleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DriveWheelConfigurationValueEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugClassImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugCostCategoryEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugLegalStatusImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugPregnancyCategoryEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugPrescriptionStatusEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DrugStrengthImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/DurationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EUEnergyEfficiencyEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EducationalOccupationalCredentialImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EducationalOrganizationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EnergyConsumptionDetailsImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EnergyEfficiencyEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EnergyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EnergyStarEnergyEfficiencyEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EntryPointImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EnumerationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EventAttendanceModeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EventImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/EventStatusTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/FinancialProductImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/FulfillmentTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GameServerStatusEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GenderTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GeneImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GeoCoordinatesImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GeoShapeImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GeospatialGeometryImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GovernmentBenefitsTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/GrantImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HealthInsurancePlanImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HealthPlanCostSharingSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HealthPlanFormularyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HealthPlanNetworkImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HowToImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HowToItemImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HowToSectionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HowToStepImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HowToSupplyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/HowToToolImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ImageObjectImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/InfectiousAgentClassEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/IntangibleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/InteractionCounterImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ItemAvailabilityEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ItemListImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ItemListOrderTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/LanguageImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/LegalForceStatusEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/LifestyleModificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ListItemImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/LoanOrCreditImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/LocationFeatureSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MapCategoryTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MapImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MassImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MaximumDoseScheduleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MeasurementMethodEnumEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MeasurementTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MediaObjectImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MediaSubscriptionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalAudienceTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalCauseImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalCodeImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalConditionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalConditionStageImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalContraindicationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalDeviceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalDevicePurposeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalEntityImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalEvidenceLevelEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalGuidelineImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalImagingTechniqueEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalIntangibleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalObservationalStudyDesignEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalProcedureImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalProcedureTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalRiskFactorImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalSignImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalSignOrSymptomImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalSpecialtyEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalStudyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalStudyStatusEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalTestImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalTherapyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicalTrialDesignEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MedicineSystemEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MemberProgramImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MemberProgramTierImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MenuItemImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MenuSectionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MerchantReturnEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MerchantReturnPolicyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MerchantReturnPolicySeasonalOverrideImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MonetaryAmountDistributionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/MonetaryAmountImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/NewsArticleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/NutritionInformationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OccupationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OccupationalExperienceRequirementsImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OfferCatalogImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OfferImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OfferItemConditionEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OfferShippingDetailsImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OpeningHoursSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OperatingSystemImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OrderStatusEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/OrganizationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PaymentCardImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PaymentMethodImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PaymentMethodTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PaymentStatusTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PerformingGroupImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PersonImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PhotographImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PhysicalActivityCategoryEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PhysicalExamEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PlaceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PostalAddressImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PostalCodeRangeSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PriceComponentTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PriceSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PriceTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ProductGroupImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ProductImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ProductModelImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ProgramMembershipImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PropertyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/PropertyValueImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/QualitativeValueEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/QuantitativeValueDistributionImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/QuantitativeValueImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/QuantityImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/RatingImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/RefundTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/RepaymentSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ReservationStatusTypeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/RestrictedDietEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ReturnFeesEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ReturnLabelSourceEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ReturnMethodEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ReviewImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/RuntimePlatformImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ScheduleImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ServiceChannelImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ServiceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ServicePeriodImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ShippingConditionsImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ShippingDeliveryTimeImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ShippingRateSettingsImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ShippingServiceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SizeGroupEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SizeSpecificationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SizeSystemEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SoftwareApplicationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SpeakableSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SpecialtyEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/StatisticalVariableImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/StatusEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SteeringPositionValueEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/StructuredValueImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SubstanceImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/SuperficialAnatomyImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/TaxonImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/TextObjectImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/TherapeuticProcedureImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/ThingImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/TierBenefitEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/TripImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/TypeAndQuantityNodeImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/UnitPriceSpecificationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/VirtualLocationImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WarrantyPromiseImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WarrantyScopeEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WearableMeasurementTypeEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WearableSizeGroupEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WearableSizeSystemEnumerationEnum.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WebContentImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WebPageElementImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WebPageImpl.java create mode 100644 generator/src/test/resources/data/filters/model/impl/WebSiteImpl.java diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/SchemaConstants.java b/generator/src/main/java/com/weedow/schemaorg/generator/SchemaConstants.java index 222ee828..ede7eac7 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/SchemaConstants.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/SchemaConstants.java @@ -23,4 +23,15 @@ private SchemaConstants() { /** Schema.org Enumeration identifier. */ public static final String SCHEMA_ENUMERATION = SCHEMA_PREFIX + "Enumeration"; + /** + * Returns the type name. + * If the type name does not contain ":", the method adds the prefix SCHEMA_PREFIX. + * Otherwise, the method returns the given type name. + * + * @param typeName type name + * @return updated type name + */ + public static String typeName(String typeName) { + return typeName.contains(":") ? typeName : SCHEMA_PREFIX + typeName; + } } diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/SchemaModelGeneratorApp.java b/generator/src/main/java/com/weedow/schemaorg/generator/SchemaModelGeneratorApp.java index fc32ea3d..b17fc695 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/SchemaModelGeneratorApp.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/SchemaModelGeneratorApp.java @@ -65,7 +65,7 @@ public SchemaModelGeneratorApp() { @picocli.CommandLine.Option(names = {"-m", "--models"}, description = "list of models to be generated. If not specified, all models will be generated.", order = 0) private List models; - @picocli.CommandLine.Option(names = {"-o", "--output"}, description = "Location of the output directory (default: target/generated-sources/schemaorg)", order = 1) + @picocli.CommandLine.Option(names = {"-o", "--output"}, description = "Location of the output directory \n Default: target/generated-sources/schemaorg", order = 1) private String output; @picocli.CommandLine.Option(names = {"-r", "--resource"}, description = "Schema resource to be used: either a \"classpath:\" pseudo URL, a \"file:\" URL, an URL or a plain file path.", order = 2) @@ -89,7 +89,10 @@ public SchemaModelGeneratorApp() { @picocli.CommandLine.Option(names = {"-c", "--custom-datatypes"}, description = "Configures Java types to be used for Schema.org data types during code generation (eg. DateTime=java.time.ZonedDateTime)", split = " ", paramLabel = "", order = 8) private Map customDataTypes; - @picocli.CommandLine.Option(names = {"-v", "--verbose"}, description = "Verbose mode. Helpful for troubleshooting.", order = 9) + @picocli.CommandLine.Option(names = {"-f", "--filter"}, description = "Filter properties or types. Format: [:include|exclude][:prop1,prop2]. Default mode is 'exclude'.", converter = FilterOptionConverter.class, paramLabel = "[:include|exclude][:prop1,prop2]", order = 9) + private List filters; + + @picocli.CommandLine.Option(names = {"-v", "--verbose"}, description = "Verbose mode. Helpful for troubleshooting.", order = 10) private boolean verboseMode; /** @@ -120,6 +123,7 @@ public Integer call() throws Exception { .setModelImplPackage(modelImplPackage) .setDataTypePackage(dataTypePackage) .setModels(models) + .setFilters(this.filters) .addCompleteHandler(elapsedTime -> LOG.success(TIMER, "Finished:" + " {} s", elapsedTime.toSeconds())); ParserOptions parserOptions = new ParserOptions() @@ -139,6 +143,13 @@ public Integer call() throws Exception { } } +class FilterOptionConverter implements picocli.CommandLine.ITypeConverter { + @Override + public GeneratorOptions.FilterOption convert(String value) { + return GeneratorOptions.FilterOption.parse(value); + } +} + /** * Version provider for picocli that reads version information from properties file. */ diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/core/GeneratorOptions.java b/generator/src/main/java/com/weedow/schemaorg/generator/core/GeneratorOptions.java index f0425c29..756b95a1 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/core/GeneratorOptions.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/core/GeneratorOptions.java @@ -5,11 +5,13 @@ import com.weedow.schemaorg.generator.core.handler.SuccessHandler; import lombok.AccessLevel; import lombok.Data; +import lombok.Getter; import lombok.Setter; import lombok.experimental.Accessors; import java.nio.file.Path; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -76,6 +78,14 @@ public final class GeneratorOptions { */ private List models; + /** + * Filters to restrict the type properties or the type itself. + * + * @return List of FilterOption + * @param filters to apply + */ + private List filters; + /** * Success handlers to be notified when a file is successfully generated. * @@ -173,4 +183,93 @@ public GeneratorOptions addCompleteHandler(CompleteHandler completeHandler) { completeHandlers.add(completeHandler); return this; } + + /** + * Filter Mode. + */ + public enum FilterMode { + /** Include the specified type properties or type */ + INCLUDE, + /** Exclude the specified type properties or type */ + EXCLUDE; + + /** + * Whether the given value is a valid FilterMode value. + * + * @param value value to check + * @return {@code true} if the value is valid, {@code false} instead. + */ + public static boolean isFilterMode(String value) { + return Arrays.stream(values()).anyMatch(filterMode -> filterMode.name().equalsIgnoreCase(value)); + } + } + + /** + * Class representing a filter: + *
    + *
  • typeName: required
  • + *
  • mode: optional. Default is EXCLUDE
  • + *
  • properties: optional. If empty, it means that the type itself is filtered.
  • + *
+ */ + @Getter + public static class FilterOption { + private static final String SEPARATOR = ":"; + private static final String PROP_SEPARATOR = ","; + + /** + * The type name. + * + * @return the type name + */ + String typeName; + /** + * The filter mode. + * + * @return the filter mode. Default is FilterMode#EXCLUDE. + */ + FilterMode mode = FilterMode.EXCLUDE; + /** + * The properties + * + * @return the type properties to filter. + */ + List properties = new java.util.ArrayList<>(); + + /** + * Parses a string with format {@code {typeName}:[mode]:[property1,property2]} and returns the corresponding FilterOption. + *

+ * Allowed formats: + *

    + *
  • {@code {typeName}:{mode}:{property1,*property2*,schema:property3}}
  • + *
  • {@code {typeName}:[property1,*property2*,schema:property3]}
  • + *
  • {@code {typeName}:*}
  • + *
  • {@code {typeName}:{mode}}
  • + *
  • {@code {typeName}}
  • + *
+ * + * @param value the value to parse + * @return a FilterOption + */ + public static FilterOption parse(String value) { + FilterOption filter = new FilterOption(); + String[] parts = value.split(SEPARATOR, 3); + + filter.typeName = parts[0]; + + if (parts.length > 1) { + // Case: MyType:(include|exclude) or MyType:(include|exclude):prop1,prop2 + if (FilterMode.isFilterMode(parts[1])) { + filter.mode = FilterMode.valueOf(parts[1].toUpperCase()); + if (parts.length > 2) { + filter.properties = List.of(parts[2].split(PROP_SEPARATOR)); + } + } else { + // Case : MyType:prop1,prop2 (use default mode 'exclude') + filter.properties = List.of(parts[1].split(PROP_SEPARATOR)); + } + } + return filter; + } + } } diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImpl.java b/generator/src/main/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImpl.java index 5dd9635a..89cc0577 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImpl.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImpl.java @@ -3,6 +3,7 @@ import com.weedow.schemaorg.commons.generator.GeneratorConstants; import com.weedow.schemaorg.commons.model.*; import com.weedow.schemaorg.generator.SchemaConstants; +import com.weedow.schemaorg.generator.core.GeneratorOptions.FilterOption; import com.weedow.schemaorg.generator.core.copy.CopyService; import com.weedow.schemaorg.generator.core.filter.SchemaDefinitionFilter; import com.weedow.schemaorg.generator.core.stream.StreamService; @@ -112,10 +113,11 @@ public void generate() { final String modelImplPackage = options.getModelImplPackage(); final String dataTypePackage = options.getDataTypePackage(); final List models = options.getModels(); + final List filters = options.getFilters(); copyPropertyFile(options.getOutputFolder(), modelPackage, modelImplPackage, dataTypePackage); - Map filteredSchemaDefinitions = schemaDefinitionFilter.filter(schemaDefinitions, models); + Map filteredSchemaDefinitions = schemaDefinitionFilter.filter(schemaDefinitions, models, filters); if (filteredSchemaDefinitions.isEmpty()) { LOG.info(LogMarkers.ERROR, GHOST, "No schema models found to generate"); return; diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilter.java b/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilter.java index f716c5cb..c08fc3d9 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilter.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilter.java @@ -1,5 +1,6 @@ package com.weedow.schemaorg.generator.core.filter; +import com.weedow.schemaorg.generator.core.GeneratorOptions; import com.weedow.schemaorg.generator.model.Type; import java.util.List; @@ -20,12 +21,14 @@ public interface SchemaDefinitionFilter { *
    *
  • Removes types without names (retired/archived types)
  • *
  • If modelIds is provided and not empty, includes only specified types plus their dependencies
  • + *
  • If filters is provided and not empty, filters the specified types or type properties
  • *
  • Returns an unmodifiable map of the filtered definitions
  • *
* * @param schemaDefinitions the complete map of schema type definitions * @param modelIds optional list of specific type IDs to include (null or empty for all types) + * @param filters Optional list of type filters to apply (null or empty for no filters) * @return an unmodifiable map containing the filtered type definitions */ - Map filter(Map schemaDefinitions, List modelIds); + Map filter(Map schemaDefinitions, List modelIds, List filters); } diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImpl.java b/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImpl.java index 55fa73a4..90fc8b61 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImpl.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImpl.java @@ -1,6 +1,7 @@ package com.weedow.schemaorg.generator.core.filter; import com.weedow.schemaorg.generator.SchemaConstants; +import com.weedow.schemaorg.generator.core.GeneratorOptions; import com.weedow.schemaorg.generator.logging.Logger; import com.weedow.schemaorg.generator.logging.LoggerFactory; import com.weedow.schemaorg.generator.model.Type; @@ -9,7 +10,7 @@ import java.util.function.Function; import java.util.stream.Collectors; -import static com.weedow.schemaorg.generator.logging.Emojis.ARCHIVED; +import static com.weedow.schemaorg.generator.logging.Emojis.*; import static com.weedow.schemaorg.generator.logging.LogMarkers.WARNING; /** @@ -20,6 +21,7 @@ *
  • Removes archived/retired types that have no name
  • *
  • When specific model IDs are provided, includes only those types plus all their dependencies * (parent types, property types, and enumeration subtypes)
  • + *
  • When filters are provided, remove the type properties or the type itself if properties are not specified
  • *
  • Recursively adds all required dependencies to ensure completeness
  • * */ @@ -33,11 +35,26 @@ public SchemaDefinitionFilterImpl() { private static final Logger LOG = LoggerFactory.getLogger(SchemaDefinitionFilterImpl.class); @Override - public Map filter(Map schemaDefinitions, List modelIds) { - Map filteredSchemaDefinitions = new HashMap<>(schemaDefinitions); + public Map filter(Map schemaDefinitions, List modelIds, List filters) { + Map filteredSchemaDefinitions = filterTypesWithoutName(schemaDefinitions); - // Filters types without a “name.” These types have been retired from the vocabulary, but their IDs are still referenced by some properties (e.g. schema:DeliveryTimeSettings). - filteredSchemaDefinitions = filteredSchemaDefinitions.entrySet().stream() + filteredSchemaDefinitions = applyFilters(filters, filteredSchemaDefinitions); + + filteredSchemaDefinitions = applyModelIds(modelIds, filteredSchemaDefinitions); + + // Unmodifiable Map + return Collections.unmodifiableMap(filteredSchemaDefinitions); + } + + /** + * Filters types without a “name”. + * These types have been retired from the vocabulary, but their IDs are still referenced by some properties (e.g. schema:DeliveryTimeSettings). + * + * @param schemaDefinitions the map of schema type definitions + * @return a map containing the filtered type definitions + */ + private static Map filterTypesWithoutName(Map schemaDefinitions) { + return schemaDefinitions.entrySet().stream() .filter(entry -> { Type type = entry.getValue(); if (type.getName() == null || type.getName().isEmpty()) { @@ -47,11 +64,52 @@ public Map filter(Map schemaDefinitions, List applyFilters(List filters, Map schemaDefinitions) { + final Map filteredSchemaDefinitions = new HashMap<>(schemaDefinitions); + + if (filters != null && !filters.isEmpty()) { + filters.forEach(filterOption -> { + String typeName = SchemaConstants.typeName(filterOption.getTypeName()); + GeneratorOptions.FilterMode mode = filterOption.getMode(); + List propertyIds = filterOption.getProperties(); + Type type = filteredSchemaDefinitions.get(typeName); + if (type != null) { + if (propertyIds != null && !propertyIds.isEmpty()) { + LOG.info(FILTERS, "Filtering properties: {} {} from {}", mode, propertyIds, typeName); + type.filterProperties(mode, propertyIds); + } else if (mode == GeneratorOptions.FilterMode.EXCLUDE) { + LOG.info(FILTERS, "Filtering type {} with mode {}", typeName, mode); + filteredSchemaDefinitions.remove(typeName); + } + } + }); + } + + return filteredSchemaDefinitions; + } + /** + * Filters the schema definitions to include only the specified model IDs and their dependencies. + * + * @param modelIds the list of model IDs to include + * @param schemaDefinitions the current map of schema type definitions + * @return a map containing only the requested models and their dependencies + */ + private static Map applyModelIds(List modelIds, Map schemaDefinitions) { if (modelIds != null && !modelIds.isEmpty()) { - filteredSchemaDefinitions = modelIds.stream() + LOG.info(MODELS, "Model IDs specified: {}", modelIds); + return modelIds.stream() // Fix model id (format 'schema:xxx') - .map(modelId -> modelId.contains(":") ? modelId : SchemaConstants.SCHEMA_PREFIX + modelId) + .map(SchemaConstants::typeName) // Filter existing models, skip models not found .filter(schemaDefinitions::containsKey) .flatMap(modelId -> { @@ -63,8 +121,7 @@ public Map filter(Map schemaDefinitions, List oldValue, LinkedHashMap::new)); } - // Unmodifiable Map - return Collections.unmodifiableMap(filteredSchemaDefinitions); + return schemaDefinitions; } /** @@ -87,7 +144,7 @@ private static void addType(Set types, Type type) { type.getParents().forEach(parent -> addType(types, parent)); type.getAllProperties().forEach(property -> property.getTypes().forEach(propertyType -> addType(types, propertyType))); if (type.isEnumerationType()) { - types.addAll(type.getSubTypes()); + type.getSubTypes().forEach(subType -> addType(types, subType)); } } } diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/logging/Emojis.java b/generator/src/main/java/com/weedow/schemaorg/generator/logging/Emojis.java index d8a3563d..b9f994f5 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/logging/Emojis.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/logging/Emojis.java @@ -30,6 +30,10 @@ private Emojis() { public static final Emoji LABEL = Emoji.of("🏷"); /** Emoji for Java-related operations. */ public static final Emoji JAVA = Emoji.of("☕"); + /** Emoji for filtering operations. */ + public static final Emoji FILTERS = Emoji.of("🔽"); + /** Emoji for models-related message. */ + public static final Emoji MODELS = Emoji.of("🧱"); /** Emoji for in progress generation operations. */ public static final Emoji GEAR = Emoji.of("⚙"); /** Emoji for completed generation operations. */ diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/model/Type.java b/generator/src/main/java/com/weedow/schemaorg/generator/model/Type.java index a9f6f1e2..e957c46b 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/model/Type.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/model/Type.java @@ -1,11 +1,13 @@ package com.weedow.schemaorg.generator.model; import com.weedow.schemaorg.generator.SchemaConstants; +import com.weedow.schemaorg.generator.core.GeneratorOptions; import com.weedow.schemaorg.generator.model.utils.ModelUtils; import lombok.*; import lombok.experimental.Accessors; import java.util.*; +import java.util.regex.Pattern; import java.util.stream.Collectors; import java.util.stream.Stream; @@ -209,6 +211,35 @@ public Type addProperty(Property property) { return this; } + + /** + * Returns the properties of this type, optionally filtered by mode and property IDs. + * + * @param mode the filter mode (INCLUDE or EXCLUDE) + * @param propertyIds the list of property IDs to filter + */ + public void filterProperties(GeneratorOptions.FilterMode mode, List propertyIds) { + if (propertyIds == null || propertyIds.isEmpty()) { + return; + } + + final Set normalizedPropertyIds = propertyIds.stream() + .map(propertyId -> { + String typeName = propertyId.contains("*") ? propertyId : SchemaConstants.typeName(propertyId); + String regex = Pattern.quote(typeName).replace("*", "\\E.*\\Q"); + return Pattern.compile(regex); + }) + .collect(Collectors.toSet()); + + if (mode == GeneratorOptions.FilterMode.EXCLUDE) { + this.properties.removeIf(property -> normalizedPropertyIds.stream().anyMatch(propertyId -> propertyId.matcher(property.getId()).matches())); + } else if (mode == GeneratorOptions.FilterMode.INCLUDE) { + this.properties.removeIf(property -> normalizedPropertyIds.stream().noneMatch(propertyId -> propertyId.matcher(property.getId()).matches())); + } + + this.allProperties = null; + } + /** * Adds a parent type to this type's inheritance hierarchy. *

    diff --git a/generator/src/main/java/com/weedow/schemaorg/generator/parser/SchemaModelParserImpl.java b/generator/src/main/java/com/weedow/schemaorg/generator/parser/SchemaModelParserImpl.java index 84a28a1f..cb933f05 100644 --- a/generator/src/main/java/com/weedow/schemaorg/generator/parser/SchemaModelParserImpl.java +++ b/generator/src/main/java/com/weedow/schemaorg/generator/parser/SchemaModelParserImpl.java @@ -67,10 +67,7 @@ public Map parse(ParserOptions options) { .entrySet() .stream() .collect(Collectors.toMap( - entry -> { - final String key = entry.getKey(); - return key.contains(":") ? key : SchemaConstants.SCHEMA_PREFIX + key; - }, + entry -> SchemaConstants.typeName(entry.getKey()), Map.Entry::getValue )) ); diff --git a/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorAppTest.java b/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorAppTest.java index 6d4e3c20..bd374cdb 100644 --- a/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorAppTest.java +++ b/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorAppTest.java @@ -1,5 +1,6 @@ package com.weedow.schemaorg.generator; +import com.weedow.schemaorg.generator.core.GeneratorOptions; import com.weedow.schemaorg.generator.core.SchemaGeneratorUtils; import org.assertj.core.api.Assertions; import org.junit.jupiter.api.AfterEach; @@ -11,6 +12,8 @@ import uk.org.webcompere.systemstubs.jupiter.SystemStubsExtension; import uk.org.webcompere.systemstubs.security.SystemExit; +import java.util.List; + import static com.weedow.schemaorg.generator.logging.Emojis.TIMER; import static uk.org.webcompere.systemstubs.SystemStubs.tapSystemOutNormalized; @@ -36,7 +39,8 @@ void help(String option) throws Exception { Usage: java -jar schema-org-generator-{version}-jar-with-dependencies.jar [-hVjv] [-m=]... [-o=] [-r=] [-s=] [-D=] [-I=] - [-M=] [-c=]... + [-M=] [-c=]... [-f=[:include|exclude] + [:prop1,prop2]]... A CLI tool to generate Java models and data types from Schema.org definitions. @@ -44,8 +48,8 @@ void help(String option) throws Exception { -V, --version Print version information and exit. -m, --models= list of models to be generated. If not specified, all models will be generated. - -o, --output= Location of the output directory (default: - target/generated-sources/schemaorg) + -o, --output= Location of the output directory + Default: target/generated-sources/schemaorg -r, --resource= Schema resource to be used: either a "classpath:" pseudo URL, a "file:" URL, an URL or a plain file @@ -70,6 +74,10 @@ version, or specific version (eg. 13.0). If not Configures Java types to be used for Schema.org data types during code generation (eg. DateTime=java. time.ZonedDateTime) + -f, --filter=[:include|exclude][:prop1,prop2] + Filter properties or types. Format: [: + include|exclude][:prop1,prop2]. Default mode is + 'exclude'. -v, --verbose Verbose mode. Helpful for troubleshooting. Please report issues at https://github.com/Kobee1203/schema-org-java/issues @@ -85,6 +93,7 @@ void generate() throws Exception { .contains("Loading local default resource 'classpath:schemaorg-current-https.jsonld'") .contains("Parsing the schema definitions...") .contains("Parsing completed.") + .contains("Model IDs specified: [Thing]") .contains("Copying common models...") .contains("Generating models...") .contains("████████████████████████████████████████") @@ -195,4 +204,35 @@ void generate_with_custom_data_types_and_java_types() throws Exception { .containsPattern(TIMER.value() + " Finished: \\d+ s") .contains("Model generation completed."); } + + @Test + void generate_with_filters() throws Exception { + String[] args = new String[]{ + "-M", "org.filters.models", + "-I", "org.filters.models.impl", + "-D", "org.filters.models.datatype", + "-m", "WebPage", + "--filter", "Thing:exclude:additionalType,alternateName,potentialAction,sameAs,schema:subject*", + "-f", "Organization:include:*Policy,*award*", + "-f", "CreativeWork:*" + // "-f", "MediaObject" + }; + String text = tapSystemOutNormalized(() -> exit.execute(() -> SchemaModelGeneratorApp.main(args))); + Assertions.assertThat(text) + .contains("Loading local default resource 'classpath:schemaorg-current-https.jsonld'") + .contains("Parsing the schema definitions...") + .contains("Parsing completed.") + .contains("Filtering properties: EXCLUDE [additionalType, alternateName, potentialAction, sameAs, schema:subject*] from schema:Thing") + .contains("Filtering properties: INCLUDE [*Policy, *award*] from schema:Organization") + .contains("Filtering properties: EXCLUDE [*] from schema:CreativeWork") + .contains("Model IDs specified: [WebPage]") + .contains("Copying common models...") + .contains("Generating models...") + .contains("████████████████████████████████████████") + .contains("100% (240/240)") + .contains(" > ") + .contains("✔ Completed") + .containsPattern(TIMER.value() + " Finished: \\d+ s") + .contains("Model generation completed."); + } } diff --git a/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorBuilderTest.java b/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorBuilderTest.java index aede5774..3160b565 100644 --- a/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorBuilderTest.java +++ b/generator/src/test/java/com/weedow/schemaorg/generator/SchemaModelGeneratorBuilderTest.java @@ -36,7 +36,7 @@ void tearDown() { @Test void generate_all() { - Map> dataMap = generateAndVerify(null, null, null, false, null); + Map> dataMap = generateAndVerify(null, null, null, false, null, null); Assertions.assertThat(dataMap).hasSize(3); Assertions.assertThat(dataMap.get(Path.of("org", "schema", "model", "datatype"))).hasSize(13); @@ -49,7 +49,7 @@ void generate_specific_models() { final String packageName = "spec"; List models = List.of("Thing"); - Map> dataMap = generateAndVerify(models, packageName, null, false, null); + Map> dataMap = generateAndVerify(models, packageName, null, false, null, null); Assertions.assertThat(dataMap).hasSize(3); Assertions.assertThat(dataMap.get(Path.of(packageName, "model", "datatype"))).hasSize(11); @@ -66,7 +66,7 @@ void generate_specific_models_with_custom_data_types() { "XPathType", javax.xml.xpath.XPath.class.getName() ); - Map> dataMap = generateAndVerify(models, packageName, null, false, customDataTypes); + Map> dataMap = generateAndVerify(models, packageName, null, false, customDataTypes, null); Assertions.assertThat(dataMap).hasSize(3); Assertions.assertThat(dataMap.get(Path.of(packageName, "model", "datatype"))).hasSize(11); @@ -79,14 +79,33 @@ void generate_with_java_types() { final String packageName = "javatypes"; List models = List.of("Example"); - Map> dataMap = generateAndVerify(models, packageName, "classpath:data/example.jsonld", true, null); + Map> dataMap = generateAndVerify(models, packageName, "classpath:data/example.jsonld", true, null, null); Assertions.assertThat(dataMap).hasSize(2); Assertions.assertThat(dataMap.get(Path.of(packageName, "model"))).hasSize(1); Assertions.assertThat(dataMap.get(Path.of(packageName, "model", "impl"))).hasSize(1); } - private Map> generateAndVerify(List models, String packageName, String schemaResource, boolean usedJavaTypes, Map customDataTypes) { + @Test + void generate_with_filters() { + final String packageName = "filters"; + List models = List.of("WebPage"); + List filterOptions = List.of( + GeneratorOptions.FilterOption.parse("Thing:exclude:additionalType,alternateName,potentialAction,sameAs,schema:subject*"), + GeneratorOptions.FilterOption.parse("Organization:include:*Policy,*award*"), + GeneratorOptions.FilterOption.parse("CreativeWork:*") + //GeneratorOptions.FilterOption.parse("MediaObject") + ); + + Map> dataMap = generateAndVerify(models, packageName, null, false, null, filterOptions); + + Assertions.assertThat(dataMap).hasSize(3); + Assertions.assertThat(dataMap.get(Path.of(packageName, "model", "datatype"))).hasSize(11); + Assertions.assertThat(dataMap.get(Path.of(packageName, "model"))).hasSize(229); + Assertions.assertThat(dataMap.get(Path.of(packageName, "model", "impl"))).hasSize(229); + } + + private Map> generateAndVerify(List models, String packageName, String schemaResource, boolean usedJavaTypes, Map customDataTypes, List filters) { final Map> dataMap = new ConcurrentHashMap<>(); final ParserOptions parserOptions = new ParserOptions() @@ -97,6 +116,7 @@ private Map> generateAndVerify(List models, String pa final GeneratorOptions generatorOptions = new GeneratorOptions(); generatorOptions.setModels(models); + generatorOptions.setFilters(filters); if (packageName != null) { generatorOptions.setModelPackage(packageName + ".model"); generatorOptions.setModelImplPackage(packageName + ".model.impl"); diff --git a/generator/src/test/java/com/weedow/schemaorg/generator/core/GeneratorOptionsTest.java b/generator/src/test/java/com/weedow/schemaorg/generator/core/GeneratorOptionsTest.java new file mode 100644 index 00000000..bf8b38ed --- /dev/null +++ b/generator/src/test/java/com/weedow/schemaorg/generator/core/GeneratorOptionsTest.java @@ -0,0 +1,51 @@ +package com.weedow.schemaorg.generator.core; + +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; + +import java.util.List; +import java.util.stream.Stream; + +import static org.assertj.core.api.Assertions.assertThat; + +class GeneratorOptionsTest { + + @ParameterizedTest + @MethodSource("provideFilterOptionTestData") + void testParseFilterOption(String input, String expectedTypeName, GeneratorOptions.FilterMode expectedMode, List expectedProperties) { + GeneratorOptions.FilterOption result = GeneratorOptions.FilterOption.parse(input); + + assertThat(result.getTypeName()).isEqualTo(expectedTypeName); + assertThat(result.getMode()).isEqualTo(expectedMode); + assertThat(result.getProperties()).containsExactlyElementsOf(expectedProperties); + } + + private static Stream provideFilterOptionTestData() { + return Stream.of( + // Full format: typeName:mode:prop1,prop2 + Arguments.of("Thing:INCLUDE:name,url", "Thing", GeneratorOptions.FilterMode.INCLUDE, List.of("name", "url")), + Arguments.of("Thing:EXCLUDE:description", "Thing", GeneratorOptions.FilterMode.EXCLUDE, List.of("description")), + + // Format: typeName:prop1,prop2 (default mode EXCLUDE) + Arguments.of("Thing:name,url", "Thing", GeneratorOptions.FilterMode.EXCLUDE, List.of("name", "url")), + + // Format: typeName:mode + Arguments.of("Thing:INCLUDE", "Thing", GeneratorOptions.FilterMode.INCLUDE, List.of()), + Arguments.of("Thing:EXCLUDE", "Thing", GeneratorOptions.FilterMode.EXCLUDE, List.of()), + + // Format: typeName + Arguments.of("Thing", "Thing", GeneratorOptions.FilterMode.EXCLUDE, List.of()), + + // Format: typeName:* (wildcard property) + Arguments.of("Thing:*", "Thing", GeneratorOptions.FilterMode.EXCLUDE, List.of("*")), + + // Wildcard in properties list + Arguments.of("Thing:INCLUDE:name,*description*,schema:url", "Thing", GeneratorOptions.FilterMode.INCLUDE, List.of("name", "*description*", "schema:url")), + + // Case insensitivity for mode + Arguments.of("Thing:include:name", "Thing", GeneratorOptions.FilterMode.INCLUDE, List.of("name")), + Arguments.of("Thing:Exclude:name", "Thing", GeneratorOptions.FilterMode.EXCLUDE, List.of("name")) + ); + } +} diff --git a/generator/src/test/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImplTest.java b/generator/src/test/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImplTest.java index 19f11ed2..2fdd1ca7 100644 --- a/generator/src/test/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImplTest.java +++ b/generator/src/test/java/com/weedow/schemaorg/generator/core/SchemaModelGeneratorImplTest.java @@ -3,6 +3,7 @@ import com.weedow.schemaorg.commons.model.JsonLdNode; import com.weedow.schemaorg.commons.model.JsonLdNodeImpl; import com.weedow.schemaorg.commons.model.JsonLdTypeName; +import com.weedow.schemaorg.generator.core.GeneratorOptions.FilterOption; import com.weedow.schemaorg.generator.core.copy.CopyService; import com.weedow.schemaorg.generator.core.filter.SchemaDefinitionFilter; import com.weedow.schemaorg.generator.core.handler.CompleteHandler; @@ -40,8 +41,11 @@ @ExtendWith(MockitoExtension.class) class SchemaModelGeneratorImplTest { + private static final List MODEL_IDS = List.of("Hotel"); + private static final List FILTERS = List.of(FilterOption.parse("Hotel:name")); + @Spy - private GeneratorOptions options = new GeneratorOptions(); + private GeneratorOptions options = new GeneratorOptions().setModels(MODEL_IDS).setFilters(FILTERS); @Mock private TemplateService templateService; @@ -69,7 +73,7 @@ void tearDown() { @Test void generate_without_schema_definitions() { try (LogCaptor logCaptor = LogCaptor.forClass(SchemaModelGeneratorImpl.class)) { - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(Collections.emptyMap()); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(Collections.emptyMap()); try (MockedConstruction mockedTracker = mockConstruction(ProgressTracker.class)) { schemaModelGenerator.generate(); @@ -91,7 +95,7 @@ void generate_abstract_data_type() throws IOException { when(type.getName()).thenReturn("DataType"); Map filteredSchemaDefinitions = Map.of("schema:DataType", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> verify(tracker).tick("DataType")); @@ -116,7 +120,7 @@ void generate_data_type() throws IOException { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:Boolean", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> verify(tracker).tick("Boolean")); @@ -145,7 +149,7 @@ void generate_sub_data_type() throws IOException { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:XPathType", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> verify(tracker).tick("XPathType")); @@ -171,7 +175,7 @@ void generate_enumeration() throws IOException { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:ActionStatusType", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> verify(tracker).tick("ActionStatusType")); @@ -201,7 +205,7 @@ void generate_type() throws IOException { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:Thing", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> verify(tracker).tick("Thing")); @@ -225,7 +229,7 @@ void cannot_generate_type_when_java_types_are_used() { when(type.isUsedJavaType()).thenReturn(true); Map filteredSchemaDefinitions = Map.of("schema:Thing", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> @@ -249,7 +253,7 @@ void generate_with_success_handler() { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:Thing", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); final Path modelFolder = options.getModelFolder(); @@ -286,7 +290,7 @@ void generate_with_error_handler() throws IOException { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:Thing", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); final Path modelFolder = options.getModelFolder(); @@ -336,7 +340,7 @@ void generate_with_complete_handler() { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:Thing", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); Instant instantStart = Instant.now(Clock.fixed(Instant.parse("2025-03-12T10:36:00Z"), ZoneId.of("UTC"))); @@ -424,7 +428,7 @@ void generate_without_common_models_copy() throws IOException { when(type.getProperties()).thenReturn(Collections.emptySet()); Map filteredSchemaDefinitions = Map.of("schema:Boolean", type); - when(schemaDefinitionFilter.filter(schemaDefinitions, null)).thenReturn(filteredSchemaDefinitions); + when(schemaDefinitionFilter.filter(schemaDefinitions, MODEL_IDS, FILTERS)).thenReturn(filteredSchemaDefinitions); when(streamService.stream(filteredSchemaDefinitions)).thenReturn(filteredSchemaDefinitions.values().stream()); runTestWithMockedTracker(filteredSchemaDefinitions.size(), tracker -> verify(tracker).tick("Boolean")); diff --git a/generator/src/test/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImplTest.java b/generator/src/test/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImplTest.java index 2982a013..0a8c85d8 100644 --- a/generator/src/test/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImplTest.java +++ b/generator/src/test/java/com/weedow/schemaorg/generator/core/filter/SchemaDefinitionFilterImplTest.java @@ -1,6 +1,7 @@ package com.weedow.schemaorg.generator.core.filter; import com.weedow.schemaorg.generator.SchemaModelGeneratorConstants; +import com.weedow.schemaorg.generator.core.GeneratorOptions; import com.weedow.schemaorg.generator.model.Property; import com.weedow.schemaorg.generator.model.Type; import nl.altindag.log.LogCaptor; @@ -40,7 +41,7 @@ void filter() { List modelIds = List.of("schema:DataType", "schema:Thing"); - Map result = schemaDefinitionFilter.filter(schemaDefinitions, modelIds); + Map result = schemaDefinitionFilter.filter(schemaDefinitions, modelIds, null); assertThat(result).containsOnly( entry("schema:String", stringType), @@ -68,7 +69,7 @@ void filter_should_exclude_types_with_null_name() { schemaDefinitions.put("schema:ArchivedType", typeWithNullName); schemaDefinitions.put("schema:ValidType", validType); - Map result = schemaDefinitionFilter.filter(schemaDefinitions, null); + Map result = schemaDefinitionFilter.filter(schemaDefinitions, null, null); assertThat(result) .doesNotContainKey("schema:ArchivedType") @@ -96,7 +97,7 @@ void filter_should_exclude_types_with_empty_name() { schemaDefinitions.put("schema:ArchivedType", typeWithEmptyName); schemaDefinitions.put("schema:ValidType", validType); - Map result = schemaDefinitionFilter.filter(schemaDefinitions, null); + Map result = schemaDefinitionFilter.filter(schemaDefinitions, null, null); assertThat(result) .doesNotContainKey("schema:ArchivedType") @@ -123,7 +124,7 @@ void filter_should_keep_types_with_valid_name() { schemaDefinitions.put("schema:Thing", validType1); schemaDefinitions.put("schema:Person", validType2); - Map result = schemaDefinitionFilter.filter(schemaDefinitions, null); + Map result = schemaDefinitionFilter.filter(schemaDefinitions, null, null); assertThat(result) .containsKey("schema:Thing") @@ -163,7 +164,7 @@ void filter_should_include_subtypes_when_type_is_enumeration() { List modelIds = List.of("schema:TestEnumeration"); - Map result = schemaDefinitionFilter.filter(schemaDefinitions, modelIds); + Map result = schemaDefinitionFilter.filter(schemaDefinitions, modelIds, null); assertThat(result).containsOnly( entry("schema:TestEnumeration", enumerationType), @@ -198,7 +199,7 @@ void filter_should_log_verbose_when_adding_types() { List modelIds = List.of("schema:Person"); - schemaDefinitionFilter.filter(schemaDefinitions, modelIds); + schemaDefinitionFilter.filter(schemaDefinitions, modelIds, null); assertThat(logCaptor.getInfoLogs()).containsExactly( "adding type: schema:Person", @@ -209,6 +210,61 @@ void filter_should_log_verbose_when_adding_types() { } } + @Test + void filter_should_filter_type_properties() { + Type thingType = new Type("schema:Thing").setName("Thing"); + Property prop1 = new Property("schema:name", null, null, null, Collections.emptyList()); + Property prop2 = new Property("schema:url", null, null, null, Collections.emptyList()); + thingType.addProperty(prop1).addProperty(prop2); + + Map schemaDefinitions = new HashMap<>(); + schemaDefinitions.put("schema:Thing", thingType); + + GeneratorOptions.FilterOption filterOption = GeneratorOptions.FilterOption.parse("Thing:EXCLUDE:url"); + + Map result = schemaDefinitionFilter.filter(schemaDefinitions, null, List.of(filterOption)); + + assertThat(result).containsKey("schema:Thing"); + assertThat(result.get("schema:Thing").getProperties()).containsExactly(prop1); + } + + @Test + void filter_should_filter_type_properties_with_wildcards() { + Type thingType = new Type("schema:Thing").setName("Thing"); + Property prop1 = new Property("schema:name", null, null, null, Collections.emptyList()); + Property prop2 = new Property("schema:url", null, null, null, Collections.emptyList()); + thingType.addProperty(prop1).addProperty(prop2); + + Map schemaDefinitions = new HashMap<>(); + schemaDefinitions.put("schema:Thing", thingType); + + GeneratorOptions.FilterOption filterOption = GeneratorOptions.FilterOption.parse("Thing:INCLUDE:*url"); + + Map result = schemaDefinitionFilter.filter(schemaDefinitions, null, List.of(filterOption)); + + assertThat(result).containsKey("schema:Thing"); + assertThat(result.get("schema:Thing").getProperties()).containsExactly(prop2); + } + + @Test + void filter_should_exclude_type_when_no_properties_specified() { + Type thingType = new Type("schema:Thing").setName("Thing"); + Type personType = new Type("schema:Person").setName("Person"); + + Map schemaDefinitions = new HashMap<>(); + schemaDefinitions.put("schema:Thing", thingType); + schemaDefinitions.put("schema:Person", personType); + + GeneratorOptions.FilterOption filterOption = GeneratorOptions.FilterOption.parse("Person"); + + Map result = schemaDefinitionFilter.filter(schemaDefinitions, null, List.of(filterOption)); + + assertThat(result) + .containsKey("schema:Thing") + .doesNotContainKey("schema:Person") + .hasSize(1); + } + private static Type type(String typeId, Set properties, List parents) { Type type = mock(Type.class); when(type.getId()).thenReturn(typeId); diff --git a/generator/src/test/java/com/weedow/schemaorg/generator/model/TypeTest.java b/generator/src/test/java/com/weedow/schemaorg/generator/model/TypeTest.java new file mode 100644 index 00000000..f7499bd8 --- /dev/null +++ b/generator/src/test/java/com/weedow/schemaorg/generator/model/TypeTest.java @@ -0,0 +1,107 @@ +package com.weedow.schemaorg.generator.model; + +import com.weedow.schemaorg.generator.core.GeneratorOptions; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.params.ParameterizedTest; +import org.junit.jupiter.params.provider.Arguments; +import org.junit.jupiter.params.provider.MethodSource; + +import java.util.List; +import java.util.stream.Stream; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +class TypeTest { + + private Type type; + private Property prop1; + private Property prop2; + private Property prop3; + + @BeforeEach + void setUp() { + type = new Type("schema:Thing"); + + prop1 = mock(Property.class); + when(prop1.getId()).thenReturn("schema:name"); + + prop2 = mock(Property.class); + when(prop2.getId()).thenReturn("schema:description"); + + prop3 = mock(Property.class); + when(prop3.getId()).thenReturn("schema:url"); + + type.addProperty(prop1); + type.addProperty(prop2); + type.addProperty(prop3); + } + + @Test + void filterProperties_EXCLUDE_with_prefix() { + type.filterProperties(GeneratorOptions.FilterMode.EXCLUDE, List.of("schema:name", "schema:url")); + assertThat(type.getProperties()).containsExactly(prop2); + } + + @Test + void filterProperties_EXCLUDE_without_prefix() { + type.filterProperties(GeneratorOptions.FilterMode.EXCLUDE, List.of("name", "url")); + assertThat(type.getProperties()).containsExactly(prop2); + } + + @Test + void filterProperties_INCLUDE_with_prefix() { + type.filterProperties(GeneratorOptions.FilterMode.INCLUDE, List.of("schema:name", "schema:url")); + assertThat(type.getProperties()).containsExactly(prop1, prop3); + } + + @Test + void filterProperties_INCLUDE_without_prefix() { + type.filterProperties(GeneratorOptions.FilterMode.INCLUDE, List.of("name", "url")); + assertThat(type.getProperties()).containsExactly(prop1, prop3); + } + + @Test + void filterProperties_empty_list_should_not_change_anything() { + type.filterProperties(GeneratorOptions.FilterMode.EXCLUDE, List.of()); + assertThat(type.getProperties()).hasSize(3).containsExactly(prop2, prop1, prop3); // Ordered by ID: description, name, url + } + + @Test + void filterProperties_null_list_should_not_change_anything() { + type.filterProperties(GeneratorOptions.FilterMode.EXCLUDE, null); + assertThat(type.getProperties()).hasSize(3).containsExactly(prop2, prop1, prop3); + } + + @ParameterizedTest + @MethodSource("provideWildcardTestData") + void filterProperties_with_wildcards(GeneratorOptions.FilterMode mode, List patterns, List expectedIds) { + type.filterProperties(mode, patterns); + assertThat(type.getProperties()) + .extracting(Property::getId) + .containsExactlyInAnyOrderElementsOf(expectedIds); + } + + private static Stream provideWildcardTestData() { + return Stream.of( + // EXCLUDE mode + Arguments.of(GeneratorOptions.FilterMode.EXCLUDE, List.of("schema:nam*"), List.of("schema:description", "schema:url")), + Arguments.of(GeneratorOptions.FilterMode.EXCLUDE, List.of("*url"), List.of("schema:name", "schema:description")), + Arguments.of(GeneratorOptions.FilterMode.EXCLUDE, List.of("schema:*me"), List.of("schema:description", "schema:url")), + Arguments.of(GeneratorOptions.FilterMode.EXCLUDE, List.of("*n*e*"), List.of("schema:description", "schema:url")), + Arguments.of(GeneratorOptions.FilterMode.EXCLUDE, List.of("*"), List.of()), + Arguments.of(GeneratorOptions.FilterMode.EXCLUDE, List.of("nam*"), List.of("schema:name", "schema:description", "schema:url")), + + // INCLUDE mode + Arguments.of(GeneratorOptions.FilterMode.INCLUDE, List.of("schema:nam*"), List.of("schema:name")), + Arguments.of(GeneratorOptions.FilterMode.INCLUDE, List.of("*url"), List.of("schema:url")), + Arguments.of(GeneratorOptions.FilterMode.INCLUDE, List.of("schema:*me"), List.of("schema:name")), + Arguments.of(GeneratorOptions.FilterMode.INCLUDE, List.of("*n*e*"), List.of("schema:name")), + Arguments.of(GeneratorOptions.FilterMode.INCLUDE, List.of("*"), List.of("schema:name", "schema:description", "schema:url")), + Arguments.of(GeneratorOptions.FilterMode.INCLUDE, List.of("nam*"), List.of()) + ); + } + +} diff --git a/generator/src/test/resources/data/filters/model/Action.java b/generator/src/test/resources/data/filters/model/Action.java new file mode 100644 index 00000000..87463ac8 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Action.java @@ -0,0 +1,377 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.ActionStatusType; +import filters.model.EntryPoint; +import filters.model.HowTo; +import filters.model.Organization; +import filters.model.Person; +import filters.model.Place; +import filters.model.PostalAddress; +import filters.model.Thing; +import filters.model.VirtualLocation; +import filters.model.datatype.DateTime; +import filters.model.datatype.Text; +import filters.model.datatype.Time; +import filters.model.datatype.URL; +import java.util.List; + +/** + * An action performed by a direct agent and indirect participants upon a direct object. Optionally happens at a location with the help of an inanimate instrument. The execution of the action may produce a result. Specific action sub-type documentation specifies the exact expectation of each argument/role.

    See also [blog post](https://blog.schema.org/2014/04/16/announcing-schema-org-actions/) and [Actions overview document](https://schema.org/docs/actions.html). + * + * @see https://schema.org/docs/collab/ActionCollabClass + * @see https://schema.org/Action + */ +public interface Action extends Thing { + + /** + * Description of the process by which the action was performed. + * + * @return {@link HowTo} + */ + List getActionProcessList(); + + /** + * Description of the process by which the action was performed. + * + * @return {@link HowTo} + */ + HowTo getActionProcess(); + + /** + * Description of the process by which the action was performed. + * + * @param actionProcess HowTo value to set. + */ + void addActionProcess(HowTo actionProcess); + + /** + * Indicates the current disposition of the Action. + * + * @return {@link ActionStatusType} + */ + List getActionStatusList(); + + /** + * Indicates the current disposition of the Action. + * + * @return {@link ActionStatusType} + */ + ActionStatusType getActionStatus(); + + /** + * Indicates the current disposition of the Action. + * + * @param actionStatus ActionStatusType value to set. + */ + void addActionStatus(ActionStatusType actionStatus); + + /** + * The direct performer or driver of the action (animate or inanimate). E.g. *John* wrote a book. + * + * @return {@link Organization} or {@link Person} + */ + List getAgentList(); + + /** + * The direct performer or driver of the action (animate or inanimate). E.g. *John* wrote a book. + * + * @return {@link Organization} or {@link Person} + */ + T getAgent(); + + /** + * The direct performer or driver of the action (animate or inanimate). E.g. *John* wrote a book. + * + * @param agent Organization value to set. + */ + void addAgent(Organization agent); + /** + * The direct performer or driver of the action (animate or inanimate). E.g. *John* wrote a book. + * + * @param agent Person value to set. + */ + void addAgent(Person agent); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + List getEndTimeList(); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + T getEndTime(); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param endTime DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addEndTime(DateTime endTime); + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param endTime Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addEndTime(Time endTime); + + /** + * For failed actions, more information on the cause of the failure. Consider using the Error type. + * + * @return {@link Thing} + */ + List getErrorList(); + + /** + * For failed actions, more information on the cause of the failure. Consider using the Error type. + * + * @return {@link Thing} + */ + Thing getError(); + + /** + * For failed actions, more information on the cause of the failure. Consider using the Error type. + * + * @param error Thing value to set. + */ + void addError(Thing error); + + /** + * The object that helped the agent perform the action. E.g. John wrote a book with *a pen*. + * + * @return {@link Thing} + */ + List getInstrumentList(); + + /** + * The object that helped the agent perform the action. E.g. John wrote a book with *a pen*. + * + * @return {@link Thing} + */ + Thing getInstrument(); + + /** + * The object that helped the agent perform the action. E.g. John wrote a book with *a pen*. + * + * @param instrument Thing value to set. + */ + void addInstrument(Thing instrument); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @return {@link Text} or {@link VirtualLocation} or {@link Place} or {@link PostalAddress} + */ + List getLocationList(); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @return {@link Text} or {@link VirtualLocation} or {@link Place} or {@link PostalAddress} + */ + T getLocation(); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location Text value to set. + */ + void addLocation(Text location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location VirtualLocation value to set. + */ + void addLocation(VirtualLocation location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location Place value to set. + */ + void addLocation(Place location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location PostalAddress value to set. + */ + void addLocation(PostalAddress location); + + /** + * The object upon which the action is carried out, whose state is kept intact or changed. Also known as the semantic roles patient, affected or undergoer (which change their state) or theme (which doesn't). E.g. John read *a book*. + * + * @return {@link Thing} + */ + List getObjectList(); + + /** + * The object upon which the action is carried out, whose state is kept intact or changed. Also known as the semantic roles patient, affected or undergoer (which change their state) or theme (which doesn't). E.g. John read *a book*. + * + * @return {@link Thing} + */ + Thing getObject(); + + /** + * The object upon which the action is carried out, whose state is kept intact or changed. Also known as the semantic roles patient, affected or undergoer (which change their state) or theme (which doesn't). E.g. John read *a book*. + * + * @param object Thing value to set. + */ + void addObject(Thing object); + + /** + * Other co-agents that participated in the action indirectly. E.g. John wrote a book with *Steve*. + * + * @return {@link Person} or {@link Organization} + */ + List getParticipantList(); + + /** + * Other co-agents that participated in the action indirectly. E.g. John wrote a book with *Steve*. + * + * @return {@link Person} or {@link Organization} + */ + T getParticipant(); + + /** + * Other co-agents that participated in the action indirectly. E.g. John wrote a book with *Steve*. + * + * @param participant Person value to set. + */ + void addParticipant(Person participant); + /** + * Other co-agents that participated in the action indirectly. E.g. John wrote a book with *Steve*. + * + * @param participant Organization value to set. + */ + void addParticipant(Organization participant); + + /** + * The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller. + * + * @return {@link Person} or {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2927 + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + List getProviderList(); + + /** + * The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller. + * + * @return {@link Person} or {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2927 + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + T getProvider(); + + /** + * The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller. + * + * @param provider Person value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2927 + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addProvider(Person provider); + /** + * The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller. + * + * @param provider Organization value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2927 + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addProvider(Organization provider); + + /** + * The result produced in the action. E.g. John wrote *a book*. + * + * @return {@link Thing} + */ + List getResultList(); + + /** + * The result produced in the action. E.g. John wrote *a book*. + * + * @return {@link Thing} + */ + Thing getResult(); + + /** + * The result produced in the action. E.g. John wrote *a book*. + * + * @param result Thing value to set. + */ + void addResult(Thing result); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + List getStartTimeList(); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + T getStartTime(); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param startTime DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addStartTime(DateTime startTime); + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param startTime Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addStartTime(Time startTime); + + /** + * Indicates a target EntryPoint, or url, for an Action. + * + * @return {@link EntryPoint} or {@link URL} + */ + List getTargetList(); + + /** + * Indicates a target EntryPoint, or url, for an Action. + * + * @return {@link EntryPoint} or {@link URL} + */ + T getTarget(); + + /** + * Indicates a target EntryPoint, or url, for an Action. + * + * @param target EntryPoint value to set. + */ + void addTarget(EntryPoint target); + /** + * Indicates a target EntryPoint, or url, for an Action. + * + * @param target URL value to set. + */ + void addTarget(URL target); +} diff --git a/generator/src/test/resources/data/filters/model/ActionStatusType.java b/generator/src/test/resources/data/filters/model/ActionStatusType.java new file mode 100644 index 00000000..7ddc81a1 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ActionStatusType.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * The status of an Action. + * + * @see https://schema.org/ActionStatusType + */ +public interface ActionStatusType extends StatusEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/AdministrativeArea.java b/generator/src/test/resources/data/filters/model/AdministrativeArea.java new file mode 100644 index 00000000..e6a1695b --- /dev/null +++ b/generator/src/test/resources/data/filters/model/AdministrativeArea.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A geographical region, typically under the jurisdiction of a particular government. + * + * @see https://schema.org/AdministrativeArea + */ +public interface AdministrativeArea extends Place { +} diff --git a/generator/src/test/resources/data/filters/model/AdultOrientedEnumeration.java b/generator/src/test/resources/data/filters/model/AdultOrientedEnumeration.java new file mode 100644 index 00000000..8bc2d76f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/AdultOrientedEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumeration of considerations that make a product relevant or potentially restricted for adults only. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2989 + * @see https://schema.org/AdultOrientedEnumeration + */ +public interface AdultOrientedEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/AggregateOffer.java b/generator/src/test/resources/data/filters/model/AggregateOffer.java new file mode 100644 index 00000000..5434c14d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/AggregateOffer.java @@ -0,0 +1,131 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Demand; +import filters.model.Offer; +import filters.model.datatype.Integer; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * When a single product is associated with multiple offers (for example, the same pair of shoes is offered by different merchants), then AggregateOffer can be used.

    Note: AggregateOffers are normally expected to associate multiple offers that all share the same defined [[businessFunction]] value, or default to http://purl.org/goodrelations/v1#Sell if businessFunction is not explicitly defined. + * + * @see https://schema.org/AggregateOffer + */ +public interface AggregateOffer extends Offer { + + /** + * The highest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @return {@link Number} or {@link Text} + */ + List getHighPriceList(); + + /** + * The highest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @return {@link Number} or {@link Text} + */ + T getHighPrice(); + + /** + * The highest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param highPrice Number value to set. + */ + void addHighPrice(Number highPrice); + /** + * The highest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param highPrice Text value to set. + */ + void addHighPrice(Text highPrice); + + /** + * The lowest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @return {@link Text} or {@link Number} + */ + List getLowPriceList(); + + /** + * The lowest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @return {@link Text} or {@link Number} + */ + T getLowPrice(); + + /** + * The lowest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param lowPrice Text value to set. + */ + void addLowPrice(Text lowPrice); + /** + * The lowest price of all offers available.

    Usage guidelines:

    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param lowPrice Number value to set. + */ + void addLowPrice(Number lowPrice); + + /** + * The number of offers for the product. + * + * @return {@link Integer} + */ + List getOfferCountList(); + + /** + * The number of offers for the product. + * + * @return {@link Integer} + */ + Integer getOfferCount(); + + /** + * The number of offers for the product. + * + * @param offerCount Integer value to set. + */ + void addOfferCount(Integer offerCount); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @return {@link Offer} or {@link Demand} + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + List getOffersList(); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @return {@link Offer} or {@link Demand} + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + T getOffers(); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @param offers Offer value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addOffers(Offer offers); + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @param offers Demand value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addOffers(Demand offers); +} diff --git a/generator/src/test/resources/data/filters/model/AggregateRating.java b/generator/src/test/resources/data/filters/model/AggregateRating.java new file mode 100644 index 00000000..51f86ed2 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/AggregateRating.java @@ -0,0 +1,81 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Thing; +import filters.model.datatype.Integer; +import java.util.List; + +/** + * The average rating based on multiple ratings or reviews. + * + * @see https://schema.org/AggregateRating + */ +public interface AggregateRating extends Rating { + + /** + * The item that is being reviewed/rated. + * + * @return {@link Thing} + */ + List getItemReviewedList(); + + /** + * The item that is being reviewed/rated. + * + * @return {@link Thing} + */ + Thing getItemReviewed(); + + /** + * The item that is being reviewed/rated. + * + * @param itemReviewed Thing value to set. + */ + void addItemReviewed(Thing itemReviewed); + + /** + * The count of total number of ratings. + * + * @return {@link Integer} + */ + List getRatingCountList(); + + /** + * The count of total number of ratings. + * + * @return {@link Integer} + */ + Integer getRatingCount(); + + /** + * The count of total number of ratings. + * + * @param ratingCount Integer value to set. + */ + void addRatingCount(Integer ratingCount); + + /** + * The count of total number of reviews. + * + * @return {@link Integer} + */ + List getReviewCountList(); + + /** + * The count of total number of reviews. + * + * @return {@link Integer} + */ + Integer getReviewCount(); + + /** + * The count of total number of reviews. + * + * @param reviewCount Integer value to set. + */ + void addReviewCount(Integer reviewCount); +} diff --git a/generator/src/test/resources/data/filters/model/AnatomicalStructure.java b/generator/src/test/resources/data/filters/model/AnatomicalStructure.java new file mode 100644 index 00000000..60d2853e --- /dev/null +++ b/generator/src/test/resources/data/filters/model/AnatomicalStructure.java @@ -0,0 +1,215 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AnatomicalStructure; +import filters.model.AnatomicalSystem; +import filters.model.ImageObject; +import filters.model.MedicalCondition; +import filters.model.MedicalTherapy; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Any part of the human body, typically a component of an anatomical system. Organs, tissues, and cells are all anatomical structures. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/AnatomicalStructure + */ +public interface AnatomicalStructure extends MedicalEntity { + + /** + * If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getAssociatedPathophysiologyList(); + + /** + * If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getAssociatedPathophysiology(); + + /** + * If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system. + * + * @param associatedPathophysiology Text value to set. + * @see https://health-lifesci.schema.org + */ + void addAssociatedPathophysiology(Text associatedPathophysiology); + + /** + * Location in the body of the anatomical structure. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getBodyLocationList(); + + /** + * Location in the body of the anatomical structure. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getBodyLocation(); + + /** + * Location in the body of the anatomical structure. + * + * @param bodyLocation Text value to set. + * @see https://health-lifesci.schema.org + */ + void addBodyLocation(Text bodyLocation); + + /** + * Other anatomical structures to which this structure is connected. + * + * @return {@link AnatomicalStructure} + * @see https://health-lifesci.schema.org + */ + List getConnectedToList(); + + /** + * Other anatomical structures to which this structure is connected. + * + * @return {@link AnatomicalStructure} + * @see https://health-lifesci.schema.org + */ + AnatomicalStructure getConnectedTo(); + + /** + * Other anatomical structures to which this structure is connected. + * + * @param connectedTo AnatomicalStructure value to set. + * @see https://health-lifesci.schema.org + */ + void addConnectedTo(AnatomicalStructure connectedTo); + + /** + * An image containing a diagram that illustrates the structure and/or its component substructures and/or connections with other structures. + * + * @return {@link ImageObject} + * @see https://health-lifesci.schema.org + */ + List getDiagramList(); + + /** + * An image containing a diagram that illustrates the structure and/or its component substructures and/or connections with other structures. + * + * @return {@link ImageObject} + * @see https://health-lifesci.schema.org + */ + ImageObject getDiagram(); + + /** + * An image containing a diagram that illustrates the structure and/or its component substructures and/or connections with other structures. + * + * @param diagram ImageObject value to set. + * @see https://health-lifesci.schema.org + */ + void addDiagram(ImageObject diagram); + + /** + * The anatomical or organ system that this structure is part of. + * + * @return {@link AnatomicalSystem} + * @see https://health-lifesci.schema.org + */ + List getPartOfSystemList(); + + /** + * The anatomical or organ system that this structure is part of. + * + * @return {@link AnatomicalSystem} + * @see https://health-lifesci.schema.org + */ + AnatomicalSystem getPartOfSystem(); + + /** + * The anatomical or organ system that this structure is part of. + * + * @param partOfSystem AnatomicalSystem value to set. + * @see https://health-lifesci.schema.org + */ + void addPartOfSystem(AnatomicalSystem partOfSystem); + + /** + * A medical condition associated with this anatomy. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + List getRelatedConditionList(); + + /** + * A medical condition associated with this anatomy. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + MedicalCondition getRelatedCondition(); + + /** + * A medical condition associated with this anatomy. + * + * @param relatedCondition MedicalCondition value to set. + * @see https://health-lifesci.schema.org + */ + void addRelatedCondition(MedicalCondition relatedCondition); + + /** + * A medical therapy related to this anatomy. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + List getRelatedTherapyList(); + + /** + * A medical therapy related to this anatomy. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + MedicalTherapy getRelatedTherapy(); + + /** + * A medical therapy related to this anatomy. + * + * @param relatedTherapy MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addRelatedTherapy(MedicalTherapy relatedTherapy); + + /** + * Component (sub-)structure(s) that comprise this anatomical structure. + * + * @return {@link AnatomicalStructure} + * @see https://health-lifesci.schema.org + */ + List getSubStructureList(); + + /** + * Component (sub-)structure(s) that comprise this anatomical structure. + * + * @return {@link AnatomicalStructure} + * @see https://health-lifesci.schema.org + */ + AnatomicalStructure getSubStructure(); + + /** + * Component (sub-)structure(s) that comprise this anatomical structure. + * + * @param subStructure AnatomicalStructure value to set. + * @see https://health-lifesci.schema.org + */ + void addSubStructure(AnatomicalStructure subStructure); +} diff --git a/generator/src/test/resources/data/filters/model/AnatomicalSystem.java b/generator/src/test/resources/data/filters/model/AnatomicalSystem.java new file mode 100644 index 00000000..b6e047bd --- /dev/null +++ b/generator/src/test/resources/data/filters/model/AnatomicalSystem.java @@ -0,0 +1,149 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AnatomicalStructure; +import filters.model.AnatomicalSystem; +import filters.model.MedicalCondition; +import filters.model.MedicalTherapy; +import filters.model.datatype.Text; +import java.util.List; + +/** + * An anatomical system is a group of anatomical structures that work together to perform a certain task. Anatomical systems, such as organ systems, are one organizing principle of anatomy, and can include circulatory, digestive, endocrine, integumentary, immune, lymphatic, muscular, nervous, reproductive, respiratory, skeletal, urinary, vestibular, and other systems. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/AnatomicalSystem + */ +public interface AnatomicalSystem extends MedicalEntity { + + /** + * If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getAssociatedPathophysiologyList(); + + /** + * If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getAssociatedPathophysiology(); + + /** + * If applicable, a description of the pathophysiology associated with the anatomical system, including potential abnormal changes in the mechanical, physical, and biochemical functions of the system. + * + * @param associatedPathophysiology Text value to set. + * @see https://health-lifesci.schema.org + */ + void addAssociatedPathophysiology(Text associatedPathophysiology); + + /** + * Specifying something physically contained by something else. Typically used here for the underlying anatomical structures, such as organs, that comprise the anatomical system. + * + * @return {@link AnatomicalStructure} or {@link AnatomicalSystem} + * @see https://health-lifesci.schema.org + */ + List getComprisedOfList(); + + /** + * Specifying something physically contained by something else. Typically used here for the underlying anatomical structures, such as organs, that comprise the anatomical system. + * + * @return {@link AnatomicalStructure} or {@link AnatomicalSystem} + * @see https://health-lifesci.schema.org + */ + T getComprisedOf(); + + /** + * Specifying something physically contained by something else. Typically used here for the underlying anatomical structures, such as organs, that comprise the anatomical system. + * + * @param comprisedOf AnatomicalStructure value to set. + * @see https://health-lifesci.schema.org + */ + void addComprisedOf(AnatomicalStructure comprisedOf); + /** + * Specifying something physically contained by something else. Typically used here for the underlying anatomical structures, such as organs, that comprise the anatomical system. + * + * @param comprisedOf AnatomicalSystem value to set. + * @see https://health-lifesci.schema.org + */ + void addComprisedOf(AnatomicalSystem comprisedOf); + + /** + * A medical condition associated with this anatomy. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + List getRelatedConditionList(); + + /** + * A medical condition associated with this anatomy. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + MedicalCondition getRelatedCondition(); + + /** + * A medical condition associated with this anatomy. + * + * @param relatedCondition MedicalCondition value to set. + * @see https://health-lifesci.schema.org + */ + void addRelatedCondition(MedicalCondition relatedCondition); + + /** + * Related anatomical structure(s) that are not part of the system but relate or connect to it, such as vascular bundles associated with an organ system. + * + * @return {@link AnatomicalStructure} + * @see https://health-lifesci.schema.org + */ + List getRelatedStructureList(); + + /** + * Related anatomical structure(s) that are not part of the system but relate or connect to it, such as vascular bundles associated with an organ system. + * + * @return {@link AnatomicalStructure} + * @see https://health-lifesci.schema.org + */ + AnatomicalStructure getRelatedStructure(); + + /** + * Related anatomical structure(s) that are not part of the system but relate or connect to it, such as vascular bundles associated with an organ system. + * + * @param relatedStructure AnatomicalStructure value to set. + * @see https://health-lifesci.schema.org + */ + void addRelatedStructure(AnatomicalStructure relatedStructure); + + /** + * A medical therapy related to this anatomy. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + List getRelatedTherapyList(); + + /** + * A medical therapy related to this anatomy. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + MedicalTherapy getRelatedTherapy(); + + /** + * A medical therapy related to this anatomy. + * + * @param relatedTherapy MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addRelatedTherapy(MedicalTherapy relatedTherapy); +} diff --git a/generator/src/test/resources/data/filters/model/Article.java b/generator/src/test/resources/data/filters/model/Article.java new file mode 100644 index 00000000..7b989cd9 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Article.java @@ -0,0 +1,293 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CreativeWork; +import filters.model.SpeakableSpecification; +import filters.model.datatype.Integer; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * An article, such as a news article or piece of investigative report. Newspapers and magazines have articles of many different types and this is intended to cover them all.

    See also [blog post](https://blog.schema.org/2014/09/02/schema-org-support-for-bibliographic-relationships-and-periodicals/). + * + * @see https://schema.org/docs/collab/rNews + * @see https://schema.org/Article + */ +public interface Article extends CreativeWork { + + /** + * The actual body of the article. + * + * @return {@link Text} + */ + List getArticleBodyList(); + + /** + * The actual body of the article. + * + * @return {@link Text} + */ + Text getArticleBody(); + + /** + * The actual body of the article. + * + * @param articleBody Text value to set. + */ + void addArticleBody(Text articleBody); + + /** + * Articles may belong to one or more 'sections' in a magazine or newspaper, such as Sports, Lifestyle, etc. + * + * @return {@link Text} + */ + List getArticleSectionList(); + + /** + * Articles may belong to one or more 'sections' in a magazine or newspaper, such as Sports, Lifestyle, etc. + * + * @return {@link Text} + */ + Text getArticleSection(); + + /** + * Articles may belong to one or more 'sections' in a magazine or newspaper, such as Sports, Lifestyle, etc. + * + * @param articleSection Text value to set. + */ + void addArticleSection(Text articleSection); + + /** + * For an [[Article]], typically a [[NewsArticle]], the backstory property provides a textual summary giving a brief explanation of why and how an article was created. In a journalistic setting this could include information about reporting process, methods, interviews, data sources, etc. + * + * @return {@link Text} or {@link CreativeWork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1688 + * @see https://schema.org/docs/collab/TP + */ + List getBackstoryList(); + + /** + * For an [[Article]], typically a [[NewsArticle]], the backstory property provides a textual summary giving a brief explanation of why and how an article was created. In a journalistic setting this could include information about reporting process, methods, interviews, data sources, etc. + * + * @return {@link Text} or {@link CreativeWork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1688 + * @see https://schema.org/docs/collab/TP + */ + T getBackstory(); + + /** + * For an [[Article]], typically a [[NewsArticle]], the backstory property provides a textual summary giving a brief explanation of why and how an article was created. In a journalistic setting this could include information about reporting process, methods, interviews, data sources, etc. + * + * @param backstory Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1688 + * @see https://schema.org/docs/collab/TP + */ + void addBackstory(Text backstory); + /** + * For an [[Article]], typically a [[NewsArticle]], the backstory property provides a textual summary giving a brief explanation of why and how an article was created. In a journalistic setting this could include information about reporting process, methods, interviews, data sources, etc. + * + * @param backstory CreativeWork value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1688 + * @see https://schema.org/docs/collab/TP + */ + void addBackstory(CreativeWork backstory); + + /** + * The page on which the work ends; for example "138" or "xvi". + * + * @return {@link Integer} or {@link Text} + * @see https://schema.org/docs/collab/bibex + */ + List getPageEndList(); + + /** + * The page on which the work ends; for example "138" or "xvi". + * + * @return {@link Integer} or {@link Text} + * @see https://schema.org/docs/collab/bibex + */ + T getPageEnd(); + + /** + * The page on which the work ends; for example "138" or "xvi". + * + * @param pageEnd Integer value to set. + * @see https://schema.org/docs/collab/bibex + */ + void addPageEnd(Integer pageEnd); + /** + * The page on which the work ends; for example "138" or "xvi". + * + * @param pageEnd Text value to set. + * @see https://schema.org/docs/collab/bibex + */ + void addPageEnd(Text pageEnd); + + /** + * The page on which the work starts; for example "135" or "xiii". + * + * @return {@link Text} or {@link Integer} + * @see https://schema.org/docs/collab/bibex + */ + List getPageStartList(); + + /** + * The page on which the work starts; for example "135" or "xiii". + * + * @return {@link Text} or {@link Integer} + * @see https://schema.org/docs/collab/bibex + */ + T getPageStart(); + + /** + * The page on which the work starts; for example "135" or "xiii". + * + * @param pageStart Text value to set. + * @see https://schema.org/docs/collab/bibex + */ + void addPageStart(Text pageStart); + /** + * The page on which the work starts; for example "135" or "xiii". + * + * @param pageStart Integer value to set. + * @see https://schema.org/docs/collab/bibex + */ + void addPageStart(Integer pageStart); + + /** + * Any description of pages that is not separated into pageStart and pageEnd; for example, "1-6, 9, 55" or "10-12, 46-49". + * + * @return {@link Text} + * @see https://schema.org/docs/collab/bibex + */ + List getPaginationList(); + + /** + * Any description of pages that is not separated into pageStart and pageEnd; for example, "1-6, 9, 55" or "10-12, 46-49". + * + * @return {@link Text} + * @see https://schema.org/docs/collab/bibex + */ + Text getPagination(); + + /** + * Any description of pages that is not separated into pageStart and pageEnd; for example, "1-6, 9, 55" or "10-12, 46-49". + * + * @param pagination Text value to set. + * @see https://schema.org/docs/collab/bibex + */ + void addPagination(Text pagination); + + /** + * Indicates sections of a Web page that are particularly 'speakable' in the sense of being highlighted as being especially appropriate for text-to-speech conversion. Other sections of a page may also be usefully spoken in particular circumstances; the 'speakable' property serves to indicate the parts most likely to be generally useful for speech. + * + * The *speakable* property can be repeated an arbitrary number of times, with three kinds of possible 'content-locator' values: + * + * 1.) *id-value* URL references - uses *id-value* of an element in the page being annotated. The simplest use of *speakable* has (potentially relative) URL values, referencing identified sections of the document concerned. + * + * 2.) CSS Selectors - addresses content in the annotated page, e.g. via class attribute. Use the [[cssSelector]] property. + * + * 3.) XPaths - addresses content via XPaths (assuming an XML view of the content). Use the [[xpath]] property. + * + * + * For more sophisticated markup of speakable sections beyond simple ID references, either CSS selectors or XPath expressions to pick out document section(s) as speakable. For this + * we define a supporting type, [[SpeakableSpecification]] which is defined to be a possible value of the *speakable* property. + * + * + * @return {@link URL} or {@link SpeakableSpecification} + * @see https://github.com/schemaorg/schemaorg/issues/1389 + */ + List getSpeakableList(); + + /** + * Indicates sections of a Web page that are particularly 'speakable' in the sense of being highlighted as being especially appropriate for text-to-speech conversion. Other sections of a page may also be usefully spoken in particular circumstances; the 'speakable' property serves to indicate the parts most likely to be generally useful for speech. + * + * The *speakable* property can be repeated an arbitrary number of times, with three kinds of possible 'content-locator' values: + * + * 1.) *id-value* URL references - uses *id-value* of an element in the page being annotated. The simplest use of *speakable* has (potentially relative) URL values, referencing identified sections of the document concerned. + * + * 2.) CSS Selectors - addresses content in the annotated page, e.g. via class attribute. Use the [[cssSelector]] property. + * + * 3.) XPaths - addresses content via XPaths (assuming an XML view of the content). Use the [[xpath]] property. + * + * + * For more sophisticated markup of speakable sections beyond simple ID references, either CSS selectors or XPath expressions to pick out document section(s) as speakable. For this + * we define a supporting type, [[SpeakableSpecification]] which is defined to be a possible value of the *speakable* property. + * + * + * @return {@link URL} or {@link SpeakableSpecification} + * @see https://github.com/schemaorg/schemaorg/issues/1389 + */ + T getSpeakable(); + + /** + * Indicates sections of a Web page that are particularly 'speakable' in the sense of being highlighted as being especially appropriate for text-to-speech conversion. Other sections of a page may also be usefully spoken in particular circumstances; the 'speakable' property serves to indicate the parts most likely to be generally useful for speech. + * + * The *speakable* property can be repeated an arbitrary number of times, with three kinds of possible 'content-locator' values: + * + * 1.) *id-value* URL references - uses *id-value* of an element in the page being annotated. The simplest use of *speakable* has (potentially relative) URL values, referencing identified sections of the document concerned. + * + * 2.) CSS Selectors - addresses content in the annotated page, e.g. via class attribute. Use the [[cssSelector]] property. + * + * 3.) XPaths - addresses content via XPaths (assuming an XML view of the content). Use the [[xpath]] property. + * + * + * For more sophisticated markup of speakable sections beyond simple ID references, either CSS selectors or XPath expressions to pick out document section(s) as speakable. For this + * we define a supporting type, [[SpeakableSpecification]] which is defined to be a possible value of the *speakable* property. + * + * + * @param speakable URL value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1389 + */ + void addSpeakable(URL speakable); + /** + * Indicates sections of a Web page that are particularly 'speakable' in the sense of being highlighted as being especially appropriate for text-to-speech conversion. Other sections of a page may also be usefully spoken in particular circumstances; the 'speakable' property serves to indicate the parts most likely to be generally useful for speech. + * + * The *speakable* property can be repeated an arbitrary number of times, with three kinds of possible 'content-locator' values: + * + * 1.) *id-value* URL references - uses *id-value* of an element in the page being annotated. The simplest use of *speakable* has (potentially relative) URL values, referencing identified sections of the document concerned. + * + * 2.) CSS Selectors - addresses content in the annotated page, e.g. via class attribute. Use the [[cssSelector]] property. + * + * 3.) XPaths - addresses content via XPaths (assuming an XML view of the content). Use the [[xpath]] property. + * + * + * For more sophisticated markup of speakable sections beyond simple ID references, either CSS selectors or XPath expressions to pick out document section(s) as speakable. For this + * we define a supporting type, [[SpeakableSpecification]] which is defined to be a possible value of the *speakable* property. + * + * + * @param speakable SpeakableSpecification value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1389 + */ + void addSpeakable(SpeakableSpecification speakable); + + /** + * The number of words in the text of the CreativeWork such as an Article, Book, etc. + * + * @return {@link Integer} + */ + List getWordCountList(); + + /** + * The number of words in the text of the CreativeWork such as an Article, Book, etc. + * + * @return {@link Integer} + */ + Integer getWordCount(); + + /** + * The number of words in the text of the CreativeWork such as an Article, Book, etc. + * + * @param wordCount Integer value to set. + */ + void addWordCount(Integer wordCount); +} diff --git a/generator/src/test/resources/data/filters/model/Audience.java b/generator/src/test/resources/data/filters/model/Audience.java new file mode 100644 index 00000000..689d2fc3 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Audience.java @@ -0,0 +1,60 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Intended audience for an item, i.e. the group for whom the item was created. + * + * @see https://schema.org/Audience + */ +public interface Audience extends Intangible { + + /** + * The target group associated with a given audience (e.g. veterans, car owners, musicians, etc.). + * + * @return {@link Text} + */ + List getAudienceTypeList(); + + /** + * The target group associated with a given audience (e.g. veterans, car owners, musicians, etc.). + * + * @return {@link Text} + */ + Text getAudienceType(); + + /** + * The target group associated with a given audience (e.g. veterans, car owners, musicians, etc.). + * + * @param audienceType Text value to set. + */ + void addAudienceType(Text audienceType); + + /** + * The geographic area associated with the audience. + * + * @return {@link AdministrativeArea} + */ + List getGeographicAreaList(); + + /** + * The geographic area associated with the audience. + * + * @return {@link AdministrativeArea} + */ + AdministrativeArea getGeographicArea(); + + /** + * The geographic area associated with the audience. + * + * @param geographicArea AdministrativeArea value to set. + */ + void addGeographicArea(AdministrativeArea geographicArea); +} diff --git a/generator/src/test/resources/data/filters/model/BedType.java b/generator/src/test/resources/data/filters/model/BedType.java new file mode 100644 index 00000000..d715cfe5 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/BedType.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A type of bed. This is used for indicating the bed or beds available in an accommodation. + * + * @see https://github.com/schemaorg/schemaorg/issues/1262 + * @see https://schema.org/docs/collab/STI_Accommodation_Ontology + * @see https://schema.org/BedType + */ +public interface BedType extends QualitativeValue { +} diff --git a/generator/src/test/resources/data/filters/model/BioChemEntity.java b/generator/src/test/resources/data/filters/model/BioChemEntity.java new file mode 100644 index 00000000..d402721f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/BioChemEntity.java @@ -0,0 +1,485 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.BioChemEntity; +import filters.model.DefinedTerm; +import filters.model.Gene; +import filters.model.Grant; +import filters.model.MedicalCondition; +import filters.model.PropertyValue; +import filters.model.Taxon; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * Any biological, chemical, or biochemical thing. For example: a protein; a gene; a chemical; a synthetic chemical. + * + * @see https://pending.schema.org + * @see http://bioschemas.org + * @see https://schema.org/BioChemEntity + */ +public interface BioChemEntity extends Thing { + + /** + * Disease associated to this BioChemEntity. Such disease can be a MedicalCondition or a URL. If you want to add an evidence supporting the association, please use PropertyValue. + * + * @return {@link MedicalCondition} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + List getAssociatedDiseaseList(); + + /** + * Disease associated to this BioChemEntity. Such disease can be a MedicalCondition or a URL. If you want to add an evidence supporting the association, please use PropertyValue. + * + * @return {@link MedicalCondition} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + T getAssociatedDisease(); + + /** + * Disease associated to this BioChemEntity. Such disease can be a MedicalCondition or a URL. If you want to add an evidence supporting the association, please use PropertyValue. + * + * @param associatedDisease MedicalCondition value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addAssociatedDisease(MedicalCondition associatedDisease); + /** + * Disease associated to this BioChemEntity. Such disease can be a MedicalCondition or a URL. If you want to add an evidence supporting the association, please use PropertyValue. + * + * @param associatedDisease URL value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addAssociatedDisease(URL associatedDisease); + /** + * Disease associated to this BioChemEntity. Such disease can be a MedicalCondition or a URL. If you want to add an evidence supporting the association, please use PropertyValue. + * + * @param associatedDisease PropertyValue value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addAssociatedDisease(PropertyValue associatedDisease); + + /** + * A BioChemEntity that is known to interact with this item. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getBioChemInteractionList(); + + /** + * A BioChemEntity that is known to interact with this item. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + BioChemEntity getBioChemInteraction(); + + /** + * A BioChemEntity that is known to interact with this item. + * + * @param bioChemInteraction BioChemEntity value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addBioChemInteraction(BioChemEntity bioChemInteraction); + + /** + * A similar BioChemEntity, e.g., obtained by fingerprint similarity algorithms. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getBioChemSimilarityList(); + + /** + * A similar BioChemEntity, e.g., obtained by fingerprint similarity algorithms. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + BioChemEntity getBioChemSimilarity(); + + /** + * A similar BioChemEntity, e.g., obtained by fingerprint similarity algorithms. + * + * @param bioChemSimilarity BioChemEntity value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addBioChemSimilarity(BioChemEntity bioChemSimilarity); + + /** + * A role played by the BioChemEntity within a biological context. + * + * @return {@link DefinedTerm} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getBiologicalRoleList(); + + /** + * A role played by the BioChemEntity within a biological context. + * + * @return {@link DefinedTerm} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + DefinedTerm getBiologicalRole(); + + /** + * A role played by the BioChemEntity within a biological context. + * + * @param biologicalRole DefinedTerm value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addBiologicalRole(DefinedTerm biologicalRole); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @return {@link Grant} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + List getFundingList(); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @return {@link Grant} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + Grant getFunding(); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @param funding Grant value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFunding(Grant funding); + + /** + * Indicates a BioChemEntity that (in some sense) has this BioChemEntity as a part. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getHasBioChemEntityPartList(); + + /** + * Indicates a BioChemEntity that (in some sense) has this BioChemEntity as a part. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + BioChemEntity getHasBioChemEntityPart(); + + /** + * Indicates a BioChemEntity that (in some sense) has this BioChemEntity as a part. + * + * @param hasBioChemEntityPart BioChemEntity value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addHasBioChemEntityPart(BioChemEntity hasBioChemEntityPart); + + /** + * Molecular function performed by this BioChemEntity; please use PropertyValue if you want to include any evidence. + * + * @return {@link DefinedTerm} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + List getHasMolecularFunctionList(); + + /** + * Molecular function performed by this BioChemEntity; please use PropertyValue if you want to include any evidence. + * + * @return {@link DefinedTerm} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + T getHasMolecularFunction(); + + /** + * Molecular function performed by this BioChemEntity; please use PropertyValue if you want to include any evidence. + * + * @param hasMolecularFunction DefinedTerm value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addHasMolecularFunction(DefinedTerm hasMolecularFunction); + /** + * Molecular function performed by this BioChemEntity; please use PropertyValue if you want to include any evidence. + * + * @param hasMolecularFunction URL value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addHasMolecularFunction(URL hasMolecularFunction); + /** + * Molecular function performed by this BioChemEntity; please use PropertyValue if you want to include any evidence. + * + * @param hasMolecularFunction PropertyValue value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addHasMolecularFunction(PropertyValue hasMolecularFunction); + + /** + * A common representation such as a protein sequence or chemical structure for this entity. For images use schema.org/image. + * + * @return {@link Text} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getHasRepresentationList(); + + /** + * A common representation such as a protein sequence or chemical structure for this entity. For images use schema.org/image. + * + * @return {@link Text} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + T getHasRepresentation(); + + /** + * A common representation such as a protein sequence or chemical structure for this entity. For images use schema.org/image. + * + * @param hasRepresentation Text value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addHasRepresentation(Text hasRepresentation); + /** + * A common representation such as a protein sequence or chemical structure for this entity. For images use schema.org/image. + * + * @param hasRepresentation URL value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addHasRepresentation(URL hasRepresentation); + /** + * A common representation such as a protein sequence or chemical structure for this entity. For images use schema.org/image. + * + * @param hasRepresentation PropertyValue value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addHasRepresentation(PropertyValue hasRepresentation); + + /** + * Another BioChemEntity encoding by this one. + * + * @return {@link Gene} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + List getIsEncodedByBioChemEntityList(); + + /** + * Another BioChemEntity encoding by this one. + * + * @return {@link Gene} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + Gene getIsEncodedByBioChemEntity(); + + /** + * Another BioChemEntity encoding by this one. + * + * @param isEncodedByBioChemEntity Gene value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addIsEncodedByBioChemEntity(Gene isEncodedByBioChemEntity); + + /** + * Biological process this BioChemEntity is involved in; please use PropertyValue if you want to include any evidence. + * + * @return {@link DefinedTerm} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + List getIsInvolvedInBiologicalProcessList(); + + /** + * Biological process this BioChemEntity is involved in; please use PropertyValue if you want to include any evidence. + * + * @return {@link DefinedTerm} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + T getIsInvolvedInBiologicalProcess(); + + /** + * Biological process this BioChemEntity is involved in; please use PropertyValue if you want to include any evidence. + * + * @param isInvolvedInBiologicalProcess DefinedTerm value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addIsInvolvedInBiologicalProcess(DefinedTerm isInvolvedInBiologicalProcess); + /** + * Biological process this BioChemEntity is involved in; please use PropertyValue if you want to include any evidence. + * + * @param isInvolvedInBiologicalProcess URL value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addIsInvolvedInBiologicalProcess(URL isInvolvedInBiologicalProcess); + /** + * Biological process this BioChemEntity is involved in; please use PropertyValue if you want to include any evidence. + * + * @param isInvolvedInBiologicalProcess PropertyValue value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addIsInvolvedInBiologicalProcess(PropertyValue isInvolvedInBiologicalProcess); + + /** + * Subcellular location where this BioChemEntity is located; please use PropertyValue if you want to include any evidence. + * + * @return {@link DefinedTerm} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + List getIsLocatedInSubcellularLocationList(); + + /** + * Subcellular location where this BioChemEntity is located; please use PropertyValue if you want to include any evidence. + * + * @return {@link DefinedTerm} or {@link URL} or {@link PropertyValue} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + T getIsLocatedInSubcellularLocation(); + + /** + * Subcellular location where this BioChemEntity is located; please use PropertyValue if you want to include any evidence. + * + * @param isLocatedInSubcellularLocation DefinedTerm value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addIsLocatedInSubcellularLocation(DefinedTerm isLocatedInSubcellularLocation); + /** + * Subcellular location where this BioChemEntity is located; please use PropertyValue if you want to include any evidence. + * + * @param isLocatedInSubcellularLocation URL value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addIsLocatedInSubcellularLocation(URL isLocatedInSubcellularLocation); + /** + * Subcellular location where this BioChemEntity is located; please use PropertyValue if you want to include any evidence. + * + * @param isLocatedInSubcellularLocation PropertyValue value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/BioChemEntity + */ + void addIsLocatedInSubcellularLocation(PropertyValue isLocatedInSubcellularLocation); + + /** + * Indicates a BioChemEntity that is (in some sense) a part of this BioChemEntity. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getIsPartOfBioChemEntityList(); + + /** + * Indicates a BioChemEntity that is (in some sense) a part of this BioChemEntity. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + BioChemEntity getIsPartOfBioChemEntity(); + + /** + * Indicates a BioChemEntity that is (in some sense) a part of this BioChemEntity. + * + * @param isPartOfBioChemEntity BioChemEntity value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addIsPartOfBioChemEntity(BioChemEntity isPartOfBioChemEntity); + + /** + * The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity. + * + * @return {@link Taxon} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + List getTaxonomicRangeList(); + + /** + * The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity. + * + * @return {@link Taxon} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + T getTaxonomicRange(); + + /** + * The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity. + * + * @param taxonomicRange Taxon value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addTaxonomicRange(Taxon taxonomicRange); + /** + * The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity. + * + * @param taxonomicRange DefinedTerm value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addTaxonomicRange(DefinedTerm taxonomicRange); + /** + * The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity. + * + * @param taxonomicRange URL value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addTaxonomicRange(URL taxonomicRange); + /** + * The taxonomic grouping of the organism that expresses, encodes, or in some way related to the BioChemEntity. + * + * @param taxonomicRange Text value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org + */ + void addTaxonomicRange(Text taxonomicRange); +} diff --git a/generator/src/test/resources/data/filters/model/BodyMeasurementTypeEnumeration.java b/generator/src/test/resources/data/filters/model/BodyMeasurementTypeEnumeration.java new file mode 100644 index 00000000..8889457c --- /dev/null +++ b/generator/src/test/resources/data/filters/model/BodyMeasurementTypeEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerates types (or dimensions) of a person's body measurements, for example for fitting of clothes. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + * @see https://schema.org/BodyMeasurementTypeEnumeration + */ +public interface BodyMeasurementTypeEnumeration extends MeasurementTypeEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Brand.java b/generator/src/test/resources/data/filters/model/Brand.java new file mode 100644 index 00000000..57c5da95 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Brand.java @@ -0,0 +1,116 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AggregateRating; +import filters.model.ImageObject; +import filters.model.Review; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A brand is a name used by an organization or business person for labeling a product, product group, or similar. + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/Brand + */ +public interface Brand extends Intangible { + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @return {@link AggregateRating} + */ + List getAggregateRatingList(); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @return {@link AggregateRating} + */ + AggregateRating getAggregateRating(); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @param aggregateRating AggregateRating value to set. + */ + void addAggregateRating(AggregateRating aggregateRating); + + /** + * An associated logo. + * + * @return {@link URL} or {@link ImageObject} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getLogoList(); + + /** + * An associated logo. + * + * @return {@link URL} or {@link ImageObject} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getLogo(); + + /** + * An associated logo. + * + * @param logo URL value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addLogo(URL logo); + /** + * An associated logo. + * + * @param logo ImageObject value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addLogo(ImageObject logo); + + /** + * A review of the item. + * + * @return {@link Review} + */ + List getReviewList(); + + /** + * A review of the item. + * + * @return {@link Review} + */ + Review getReview(); + + /** + * A review of the item. + * + * @param review Review value to set. + */ + void addReview(Review review); + + /** + * A slogan or motto associated with the item. + * + * @return {@link Text} + */ + List getSloganList(); + + /** + * A slogan or motto associated with the item. + * + * @return {@link Text} + */ + Text getSlogan(); + + /** + * A slogan or motto associated with the item. + * + * @param slogan Text value to set. + */ + void addSlogan(Text slogan); +} diff --git a/generator/src/test/resources/data/filters/model/BreadcrumbList.java b/generator/src/test/resources/data/filters/model/BreadcrumbList.java new file mode 100644 index 00000000..89cfdb7e --- /dev/null +++ b/generator/src/test/resources/data/filters/model/BreadcrumbList.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A BreadcrumbList is an ItemList consisting of a chain of linked Web pages, typically described using at least their URL and their name, and typically ending with the current page.

    The [[position]] property is used to reconstruct the order of the items in a BreadcrumbList. The convention is that a breadcrumb list has an [[itemListOrder]] of [[ItemListOrderAscending]] (lower values listed first), and that the first items in this list correspond to the "top" or beginning of the breadcrumb trail, e.g. with a site or section homepage. The specific values of 'position' are not assigned meaning for a BreadcrumbList, but they should be integers, e.g. beginning with '1' for the first item in the list. + * + * + * @see https://schema.org/BreadcrumbList + */ +public interface BreadcrumbList extends ItemList { +} diff --git a/generator/src/test/resources/data/filters/model/BusinessEntityType.java b/generator/src/test/resources/data/filters/model/BusinessEntityType.java new file mode 100644 index 00000000..ca5656c3 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/BusinessEntityType.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A business entity type is a conceptual entity representing the legal form, the size, the main line of business, the position in the value chain, or any combination thereof, of an organization or business person.

    Commonly used values:

    * http://purl.org/goodrelations/v1#Business
    * http://purl.org/goodrelations/v1#Enduser
    * http://purl.org/goodrelations/v1#PublicInstitution
    * http://purl.org/goodrelations/v1#Reseller + * + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/BusinessEntityType + */ +public interface BusinessEntityType extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/BusinessFunction.java b/generator/src/test/resources/data/filters/model/BusinessFunction.java new file mode 100644 index 00000000..7f977540 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/BusinessFunction.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * The business function specifies the type of activity or access (i.e., the bundle of rights) offered by the organization or business person through the offer. Typical are sell, rental or lease, maintenance or repair, manufacture / produce, recycle / dispose, engineering / construction, or installation. Proprietary specifications of access rights are also instances of this class.

    Commonly used values:

    * http://purl.org/goodrelations/v1#ConstructionInstallation
    * http://purl.org/goodrelations/v1#Dispose
    * http://purl.org/goodrelations/v1#LeaseOut
    * http://purl.org/goodrelations/v1#Maintain
    * http://purl.org/goodrelations/v1#ProvideService
    * http://purl.org/goodrelations/v1#Repair
    * http://purl.org/goodrelations/v1#Sell
    * http://purl.org/goodrelations/v1#Buy + * + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/BusinessFunction + */ +public interface BusinessFunction extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/CategoryCode.java b/generator/src/test/resources/data/filters/model/CategoryCode.java new file mode 100644 index 00000000..54979b52 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/CategoryCode.java @@ -0,0 +1,83 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CategoryCodeSet; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A Category Code. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + * @see https://schema.org/CategoryCode + */ +public interface CategoryCode extends DefinedTerm { + + /** + * A short textual code that uniquely identifies the value. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getCodeValueList(); + + /** + * A short textual code that uniquely identifies the value. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + Text getCodeValue(); + + /** + * A short textual code that uniquely identifies the value. + * + * @param codeValue Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addCodeValue(Text codeValue); + + /** + * A [[CategoryCodeSet]] that contains this category code. + * + * @return {@link CategoryCodeSet} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getInCodeSetList(); + + /** + * A [[CategoryCodeSet]] that contains this category code. + * + * @return {@link CategoryCodeSet} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + T getInCodeSet(); + + /** + * A [[CategoryCodeSet]] that contains this category code. + * + * @param inCodeSet CategoryCodeSet value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addInCodeSet(CategoryCodeSet inCodeSet); + /** + * A [[CategoryCodeSet]] that contains this category code. + * + * @param inCodeSet URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addInCodeSet(URL inCodeSet); +} diff --git a/generator/src/test/resources/data/filters/model/CategoryCodeSet.java b/generator/src/test/resources/data/filters/model/CategoryCodeSet.java new file mode 100644 index 00000000..180baa7b --- /dev/null +++ b/generator/src/test/resources/data/filters/model/CategoryCodeSet.java @@ -0,0 +1,46 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CategoryCode; +import java.util.List; + +/** + * A set of Category Code values. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + * @see https://schema.org/CategoryCodeSet + */ +public interface CategoryCodeSet extends DefinedTermSet { + + /** + * A Category code contained in this code set. + * + * @return {@link CategoryCode} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getHasCategoryCodeList(); + + /** + * A Category code contained in this code set. + * + * @return {@link CategoryCode} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + CategoryCode getHasCategoryCode(); + + /** + * A Category code contained in this code set. + * + * @param hasCategoryCode CategoryCode value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addHasCategoryCode(CategoryCode hasCategoryCode); +} diff --git a/generator/src/test/resources/data/filters/model/Certification.java b/generator/src/test/resources/data/filters/model/Certification.java new file mode 100644 index 00000000..06224783 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Certification.java @@ -0,0 +1,362 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.CertificationStatusEnumeration; +import filters.model.DefinedTerm; +import filters.model.ImageObject; +import filters.model.Organization; +import filters.model.QuantitativeValue; +import filters.model.Rating; +import filters.model.Thing; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A Certification is an official and authoritative statement about a subject, for example a product, service, person, or organization. A certification is typically issued by an indendent certification body, for example a professional organization or government. It formally attests certain characteristics about the subject, for example Organizations can be ISO certified, Food products can be certified Organic or Vegan, a Person can be a certified professional, a Place can be certified for food processing. There are certifications for many domains: regulatory, organizational, recycling, food, efficiency, educational, ecological, etc. A certification is a form of credential, as are accreditations and licenses. Mapped from the [gs1:CertificationDetails](https://www.gs1.org/voc/CertificationDetails) class in the GS1 Web Vocabulary. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + * @see https://schema.org/Certification + */ +public interface Certification extends CreativeWork { + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + List getAboutList(); + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + Thing getAbout(); + + /** + * The subject matter of an object. + * + * @param about Thing value to set. + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + void addAbout(Thing about); + + /** + * Date when a certification was last audited. See also [gs1:certificationAuditDate](https://www.gs1.org/voc/certificationAuditDate). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + List getAuditDateList(); + + /** + * Date when a certification was last audited. See also [gs1:certificationAuditDate](https://www.gs1.org/voc/certificationAuditDate). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + T getAuditDate(); + + /** + * Date when a certification was last audited. See also [gs1:certificationAuditDate](https://www.gs1.org/voc/certificationAuditDate). + * + * @param auditDate DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + void addAuditDate(DateTime auditDate); + /** + * Date when a certification was last audited. See also [gs1:certificationAuditDate](https://www.gs1.org/voc/certificationAuditDate). + * + * @param auditDate Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + void addAuditDate(Date auditDate); + + /** + * Identifier of a certification instance (as registered with an independent certification body). Typically this identifier can be used to consult and verify the certification instance. See also [gs1:certificationIdentification](https://www.gs1.org/voc/certificationIdentification). + * + * @return {@link DefinedTerm} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + List getCertificationIdentificationList(); + + /** + * Identifier of a certification instance (as registered with an independent certification body). Typically this identifier can be used to consult and verify the certification instance. See also [gs1:certificationIdentification](https://www.gs1.org/voc/certificationIdentification). + * + * @return {@link DefinedTerm} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + T getCertificationIdentification(); + + /** + * Identifier of a certification instance (as registered with an independent certification body). Typically this identifier can be used to consult and verify the certification instance. See also [gs1:certificationIdentification](https://www.gs1.org/voc/certificationIdentification). + * + * @param certificationIdentification DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + void addCertificationIdentification(DefinedTerm certificationIdentification); + /** + * Identifier of a certification instance (as registered with an independent certification body). Typically this identifier can be used to consult and verify the certification instance. See also [gs1:certificationIdentification](https://www.gs1.org/voc/certificationIdentification). + * + * @param certificationIdentification Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + void addCertificationIdentification(Text certificationIdentification); + + /** + * Rating of a certification instance (as defined by an independent certification body). Typically this rating can be used to rate the level to which the requirements of the certification instance are fulfilled. See also [gs1:certificationValue](https://www.gs1.org/voc/certificationValue). + * + * @return {@link Rating} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + List getCertificationRatingList(); + + /** + * Rating of a certification instance (as defined by an independent certification body). Typically this rating can be used to rate the level to which the requirements of the certification instance are fulfilled. See also [gs1:certificationValue](https://www.gs1.org/voc/certificationValue). + * + * @return {@link Rating} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + Rating getCertificationRating(); + + /** + * Rating of a certification instance (as defined by an independent certification body). Typically this rating can be used to rate the level to which the requirements of the certification instance are fulfilled. See also [gs1:certificationValue](https://www.gs1.org/voc/certificationValue). + * + * @param certificationRating Rating value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + void addCertificationRating(Rating certificationRating); + + /** + * Indicates the current status of a certification: active or inactive. See also [gs1:certificationStatus](https://www.gs1.org/voc/certificationStatus). + * + * @return {@link CertificationStatusEnumeration} + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + List getCertificationStatusList(); + + /** + * Indicates the current status of a certification: active or inactive. See also [gs1:certificationStatus](https://www.gs1.org/voc/certificationStatus). + * + * @return {@link CertificationStatusEnumeration} + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + CertificationStatusEnumeration getCertificationStatus(); + + /** + * Indicates the current status of a certification: active or inactive. See also [gs1:certificationStatus](https://www.gs1.org/voc/certificationStatus). + * + * @param certificationStatus CertificationStatusEnumeration value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3230 + */ + void addCertificationStatus(CertificationStatusEnumeration certificationStatus); + + /** + * Date of first publication or broadcast. For example the date a [[CreativeWork]] was broadcast or a [[Certification]] was issued. + * + * @return {@link Date} or {@link DateTime} + */ + List getDatePublishedList(); + + /** + * Date of first publication or broadcast. For example the date a [[CreativeWork]] was broadcast or a [[Certification]] was issued. + * + * @return {@link Date} or {@link DateTime} + */ + T getDatePublished(); + + /** + * Date of first publication or broadcast. For example the date a [[CreativeWork]] was broadcast or a [[Certification]] was issued. + * + * @param datePublished Date value to set. + */ + void addDatePublished(Date datePublished); + /** + * Date of first publication or broadcast. For example the date a [[CreativeWork]] was broadcast or a [[Certification]] was issued. + * + * @param datePublished DateTime value to set. + */ + void addDatePublished(DateTime datePublished); + + /** + * Date the content expires and is no longer useful or available. For example a [[VideoObject]] or [[NewsArticle]] whose availability or relevance is time-limited, a [[ClaimReview]] fact check whose publisher wants to indicate that it may no longer be relevant (or helpful to highlight) after some date, or a [[Certification]] the validity has expired. + * + * @return {@link DateTime} or {@link Date} + */ + List getExpiresList(); + + /** + * Date the content expires and is no longer useful or available. For example a [[VideoObject]] or [[NewsArticle]] whose availability or relevance is time-limited, a [[ClaimReview]] fact check whose publisher wants to indicate that it may no longer be relevant (or helpful to highlight) after some date, or a [[Certification]] the validity has expired. + * + * @return {@link DateTime} or {@link Date} + */ + T getExpires(); + + /** + * Date the content expires and is no longer useful or available. For example a [[VideoObject]] or [[NewsArticle]] whose availability or relevance is time-limited, a [[ClaimReview]] fact check whose publisher wants to indicate that it may no longer be relevant (or helpful to highlight) after some date, or a [[Certification]] the validity has expired. + * + * @param expires DateTime value to set. + */ + void addExpires(DateTime expires); + /** + * Date the content expires and is no longer useful or available. For example a [[VideoObject]] or [[NewsArticle]] whose availability or relevance is time-limited, a [[ClaimReview]] fact check whose publisher wants to indicate that it may no longer be relevant (or helpful to highlight) after some date, or a [[Certification]] the validity has expired. + * + * @param expires Date value to set. + */ + void addExpires(Date expires); + + /** + * A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings. + * + * @return {@link QuantitativeValue} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + */ + List getHasMeasurementList(); + + /** + * A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings. + * + * @return {@link QuantitativeValue} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + */ + QuantitativeValue getHasMeasurement(); + + /** + * A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings. + * + * @param hasMeasurement QuantitativeValue value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + */ + void addHasMeasurement(QuantitativeValue hasMeasurement); + + /** + * The organization issuing the item, for example a [[Permit]], [[Ticket]], or [[Certification]]. + * + * @return {@link Organization} + */ + List getIssuedByList(); + + /** + * The organization issuing the item, for example a [[Permit]], [[Ticket]], or [[Certification]]. + * + * @return {@link Organization} + */ + Organization getIssuedBy(); + + /** + * The organization issuing the item, for example a [[Permit]], [[Ticket]], or [[Certification]]. + * + * @param issuedBy Organization value to set. + */ + void addIssuedBy(Organization issuedBy); + + /** + * An associated logo. + * + * @return {@link URL} or {@link ImageObject} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getLogoList(); + + /** + * An associated logo. + * + * @return {@link URL} or {@link ImageObject} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getLogo(); + + /** + * An associated logo. + * + * @param logo URL value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addLogo(URL logo); + /** + * An associated logo. + * + * @param logo ImageObject value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addLogo(ImageObject logo); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidFromList(); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidFrom(); + + /** + * The date when the item becomes valid. + * + * @param validFrom DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(DateTime validFrom); + /** + * The date when the item becomes valid. + * + * @param validFrom Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(Date validFrom); + + /** + * The geographic area where the item is valid. Applies for example to a [[Permit]], a [[Certification]], or an [[EducationalOccupationalCredential]]. + * + * @return {@link AdministrativeArea} + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getValidInList(); + + /** + * The geographic area where the item is valid. Applies for example to a [[Permit]], a [[Certification]], or an [[EducationalOccupationalCredential]]. + * + * @return {@link AdministrativeArea} + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + AdministrativeArea getValidIn(); + + /** + * The geographic area where the item is valid. Applies for example to a [[Permit]], a [[Certification]], or an [[EducationalOccupationalCredential]]. + * + * @param validIn AdministrativeArea value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addValidIn(AdministrativeArea validIn); +} diff --git a/generator/src/test/resources/data/filters/model/CertificationStatusEnumeration.java b/generator/src/test/resources/data/filters/model/CertificationStatusEnumeration.java new file mode 100644 index 00000000..5b4de9a6 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/CertificationStatusEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerates the different statuses of a Certification (Active and Inactive). + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3230 + * @see https://schema.org/CertificationStatusEnumeration + */ +public interface CertificationStatusEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/CivicStructure.java b/generator/src/test/resources/data/filters/model/CivicStructure.java new file mode 100644 index 00000000..dd03873a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/CivicStructure.java @@ -0,0 +1,38 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.datatype.Text; +import java.util.List; + +/** + * A public structure, such as a town hall or concert hall. + * + * @see https://schema.org/CivicStructure + */ +public interface CivicStructure extends Place { + + /** + * The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas ',' separating each day. Day or time ranges are specified using a hyphen '-'.

    * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```.
    * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```.
    * Here is an example: <time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time>.
    * If a business is open 7 days a week, then it can be specified as <time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time>. + * + * @return {@link Text} + */ + List getOpeningHoursList(); + + /** + * The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas ',' separating each day. Day or time ranges are specified using a hyphen '-'.

    * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```.
    * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```.
    * Here is an example: <time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time>.
    * If a business is open 7 days a week, then it can be specified as <time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time>. + * + * @return {@link Text} + */ + Text getOpeningHours(); + + /** + * The general opening hours for a business. Opening hours can be specified as a weekly time range, starting with days, then times per day. Multiple days can be listed with commas ',' separating each day. Day or time ranges are specified using a hyphen '-'.

    * Days are specified using the following two-letter combinations: ```Mo```, ```Tu```, ```We```, ```Th```, ```Fr```, ```Sa```, ```Su```.
    * Times are specified using 24:00 format. For example, 3pm is specified as ```15:00```, 10am as ```10:00```.
    * Here is an example: <time itemprop="openingHours" datetime="Tu,Th 16:00-20:00">Tuesdays and Thursdays 4-8pm</time>.
    * If a business is open 7 days a week, then it can be specified as <time itemprop="openingHours" datetime="Mo-Su">Monday through Sunday, all day</time>. + * + * @param openingHours Text value to set. + */ + void addOpeningHours(Text openingHours); +} diff --git a/generator/src/test/resources/data/filters/model/Claim.java b/generator/src/test/resources/data/filters/model/Claim.java new file mode 100644 index 00000000..e76b4310 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Claim.java @@ -0,0 +1,115 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CreativeWork; +import filters.model.Organization; +import filters.model.Person; +import java.util.List; + +/** + * A [[Claim]] in Schema.org represents a specific, factually-oriented claim that could be the [[itemReviewed]] in a [[ClaimReview]]. The content of a claim can be summarized with the [[text]] property. Variations on well known claims can have their common identity indicated via [[sameAs]] links, and summarized with a [[name]]. Ideally, a [[Claim]] description includes enough contextual information to minimize the risk of ambiguity or inclarity. In practice, many claims are better understood in the context in which they appear or the interpretations provided by claim reviews. + * + * Beyond [[ClaimReview]], the Claim type can be associated with related creative works - for example a [[ScholarlyArticle]] or [[Question]] might be [[about]] some [[Claim]]. + * + * At this time, Schema.org does not define any types of relationship between claims. This is a natural area for future exploration. + * + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + * @see https://schema.org/Claim + */ +public interface Claim extends CreativeWork { + + /** + * Indicates an occurrence of a [[Claim]] in some [[CreativeWork]]. + * + * @return {@link CreativeWork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + */ + List getAppearanceList(); + + /** + * Indicates an occurrence of a [[Claim]] in some [[CreativeWork]]. + * + * @return {@link CreativeWork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + */ + CreativeWork getAppearance(); + + /** + * Indicates an occurrence of a [[Claim]] in some [[CreativeWork]]. + * + * @param appearance CreativeWork value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + */ + void addAppearance(CreativeWork appearance); + + /** + * For a [[Claim]] interpreted from [[MediaObject]] content, the [[interpretedAsClaim]] property can be used to indicate a claim contained, implied or refined from the content of a [[MediaObject]]. + * + * @return {@link Person} or {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + List getClaimInterpreterList(); + + /** + * For a [[Claim]] interpreted from [[MediaObject]] content, the [[interpretedAsClaim]] property can be used to indicate a claim contained, implied or refined from the content of a [[MediaObject]]. + * + * @return {@link Person} or {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + T getClaimInterpreter(); + + /** + * For a [[Claim]] interpreted from [[MediaObject]] content, the [[interpretedAsClaim]] property can be used to indicate a claim contained, implied or refined from the content of a [[MediaObject]]. + * + * @param claimInterpreter Person value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + void addClaimInterpreter(Person claimInterpreter); + /** + * For a [[Claim]] interpreted from [[MediaObject]] content, the [[interpretedAsClaim]] property can be used to indicate a claim contained, implied or refined from the content of a [[MediaObject]]. + * + * @param claimInterpreter Organization value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + void addClaimInterpreter(Organization claimInterpreter); + + /** + * Indicates the first known occurrence of a [[Claim]] in some [[CreativeWork]]. + * + * @return {@link CreativeWork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + */ + List getFirstAppearanceList(); + + /** + * Indicates the first known occurrence of a [[Claim]] in some [[CreativeWork]]. + * + * @return {@link CreativeWork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + */ + CreativeWork getFirstAppearance(); + + /** + * Indicates the first known occurrence of a [[Claim]] in some [[CreativeWork]]. + * + * @param firstAppearance CreativeWork value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1828 + */ + void addFirstAppearance(CreativeWork firstAppearance); +} diff --git a/generator/src/test/resources/data/filters/model/Class.java b/generator/src/test/resources/data/filters/model/Class.java new file mode 100644 index 00000000..5eb95c28 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Class.java @@ -0,0 +1,58 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Class; +import filters.model.Enumeration; +import filters.model.Property; +import java.util.List; + +/** + * A class, also often called a 'Type'; equivalent to rdfs:Class. + * + * @see https://meta.schema.org + * @see https://schema.org/Class + */ +public interface Class extends Intangible { + + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @return {@link Property} or {@link Class} or {@link Enumeration} + * @see https://meta.schema.org + */ + List getSupersededByList(); + + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @return {@link Property} or {@link Class} or {@link Enumeration} + * @see https://meta.schema.org + */ + T getSupersededBy(); + + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @param supersededBy Property value to set. + * @see https://meta.schema.org + */ + void addSupersededBy(Property supersededBy); + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @param supersededBy Class value to set. + * @see https://meta.schema.org + */ + void addSupersededBy(Class supersededBy); + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @param supersededBy Enumeration value to set. + * @see https://meta.schema.org + */ + void addSupersededBy(Enumeration supersededBy); +} diff --git a/generator/src/test/resources/data/filters/model/ConstraintNode.java b/generator/src/test/resources/data/filters/model/ConstraintNode.java new file mode 100644 index 00000000..60a08b92 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ConstraintNode.java @@ -0,0 +1,84 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Property; +import filters.model.datatype.Integer; +import filters.model.datatype.URL; +import java.util.List; + +/** + * The ConstraintNode type is provided to support usecases in which a node in a structured data graph is described with properties which appear to describe a single entity, but are being used in a situation where they serve a more abstract purpose. A [[ConstraintNode]] can be described using [[constraintProperty]] and [[numConstraints]]. These constraint properties can serve a + * variety of purposes, and their values may sometimes be understood to indicate sets of possible values rather than single, exact and specific values. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2564 + * @see https://schema.org/ConstraintNode + */ +public interface ConstraintNode extends Intangible { + + /** + * Indicates a property used as a constraint. For example, in the definition of a [[StatisticalVariable]]. The value is a property, either from within Schema.org or from other compatible (e.g. RDF) systems such as DataCommons.org or Wikidata.org. + * + * @return {@link URL} or {@link Property} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + List getConstraintPropertyList(); + + /** + * Indicates a property used as a constraint. For example, in the definition of a [[StatisticalVariable]]. The value is a property, either from within Schema.org or from other compatible (e.g. RDF) systems such as DataCommons.org or Wikidata.org. + * + * @return {@link URL} or {@link Property} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + T getConstraintProperty(); + + /** + * Indicates a property used as a constraint. For example, in the definition of a [[StatisticalVariable]]. The value is a property, either from within Schema.org or from other compatible (e.g. RDF) systems such as DataCommons.org or Wikidata.org. + * + * @param constraintProperty URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + void addConstraintProperty(URL constraintProperty); + /** + * Indicates a property used as a constraint. For example, in the definition of a [[StatisticalVariable]]. The value is a property, either from within Schema.org or from other compatible (e.g. RDF) systems such as DataCommons.org or Wikidata.org. + * + * @param constraintProperty Property value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + void addConstraintProperty(Property constraintProperty); + + /** + * Indicates the number of constraints property values defined for a particular [[ConstraintNode]] such as [[StatisticalVariable]]. This helps applications understand if they have access to a sufficiently complete description of a [[StatisticalVariable]] or other construct that is defined using properties on template-style nodes. + * + * @return {@link Integer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + List getNumConstraintsList(); + + /** + * Indicates the number of constraints property values defined for a particular [[ConstraintNode]] such as [[StatisticalVariable]]. This helps applications understand if they have access to a sufficiently complete description of a [[StatisticalVariable]] or other construct that is defined using properties on template-style nodes. + * + * @return {@link Integer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + Integer getNumConstraints(); + + /** + * Indicates the number of constraints property values defined for a particular [[ConstraintNode]] such as [[StatisticalVariable]]. This helps applications understand if they have access to a sufficiently complete description of a [[StatisticalVariable]] or other construct that is defined using properties on template-style nodes. + * + * @param numConstraints Integer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2291 + */ + void addNumConstraints(Integer numConstraints); +} diff --git a/generator/src/test/resources/data/filters/model/ContactPoint.java b/generator/src/test/resources/data/filters/model/ContactPoint.java new file mode 100644 index 00000000..02f7e64d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ContactPoint.java @@ -0,0 +1,276 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.ContactPointOption; +import filters.model.GeoShape; +import filters.model.Language; +import filters.model.OpeningHoursSpecification; +import filters.model.Place; +import filters.model.Product; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A contact point—for example, a Customer Complaints department. + * + * @see https://schema.org/ContactPoint + */ +public interface ContactPoint extends StructuredValue { + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + List getAreaServedList(); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + T getAreaServed(); + + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Place value to set. + */ + void addAreaServed(Place areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed AdministrativeArea value to set. + */ + void addAreaServed(AdministrativeArea areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed GeoShape value to set. + */ + void addAreaServed(GeoShape areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Text value to set. + */ + void addAreaServed(Text areaServed); + + /** + * A language someone may use with or at the item, service or place. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[inLanguage]]. + * + * @return {@link Language} or {@link Text} + */ + List getAvailableLanguageList(); + + /** + * A language someone may use with or at the item, service or place. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[inLanguage]]. + * + * @return {@link Language} or {@link Text} + */ + T getAvailableLanguage(); + + /** + * A language someone may use with or at the item, service or place. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[inLanguage]]. + * + * @param availableLanguage Language value to set. + */ + void addAvailableLanguage(Language availableLanguage); + /** + * A language someone may use with or at the item, service or place. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[inLanguage]]. + * + * @param availableLanguage Text value to set. + */ + void addAvailableLanguage(Text availableLanguage); + + /** + * An option available on this contact point (e.g. a toll-free number or support for hearing-impaired callers). + * + * @return {@link ContactPointOption} + */ + List getContactOptionList(); + + /** + * An option available on this contact point (e.g. a toll-free number or support for hearing-impaired callers). + * + * @return {@link ContactPointOption} + */ + ContactPointOption getContactOption(); + + /** + * An option available on this contact point (e.g. a toll-free number or support for hearing-impaired callers). + * + * @param contactOption ContactPointOption value to set. + */ + void addContactOption(ContactPointOption contactOption); + + /** + * A person or organization can have different contact points, for different purposes. For example, a sales contact point, a PR contact point and so on. This property is used to specify the kind of contact point. + * + * @return {@link Text} + */ + List getContactTypeList(); + + /** + * A person or organization can have different contact points, for different purposes. For example, a sales contact point, a PR contact point and so on. This property is used to specify the kind of contact point. + * + * @return {@link Text} + */ + Text getContactType(); + + /** + * A person or organization can have different contact points, for different purposes. For example, a sales contact point, a PR contact point and so on. This property is used to specify the kind of contact point. + * + * @param contactType Text value to set. + */ + void addContactType(Text contactType); + + /** + * Email address. + * + * @return {@link Text} + */ + List getEmailList(); + + /** + * Email address. + * + * @return {@link Text} + */ + Text getEmail(); + + /** + * Email address. + * + * @param email Text value to set. + */ + void addEmail(Text email); + + /** + * The fax number. + * + * @return {@link Text} + */ + List getFaxNumberList(); + + /** + * The fax number. + * + * @return {@link Text} + */ + Text getFaxNumber(); + + /** + * The fax number. + * + * @param faxNumber Text value to set. + */ + void addFaxNumber(Text faxNumber); + + /** + * The hours during which this service or contact is available. + * + * @return {@link OpeningHoursSpecification} + */ + List getHoursAvailableList(); + + /** + * The hours during which this service or contact is available. + * + * @return {@link OpeningHoursSpecification} + */ + OpeningHoursSpecification getHoursAvailable(); + + /** + * The hours during which this service or contact is available. + * + * @param hoursAvailable OpeningHoursSpecification value to set. + */ + void addHoursAvailable(OpeningHoursSpecification hoursAvailable); + + /** + * The product or service this support contact point is related to (such as product support for a particular product line). This can be a specific product or product line (e.g. "iPhone") or a general category of products or services (e.g. "smartphones"). + * + * @return {@link Text} or {@link Product} + */ + List getProductSupportedList(); + + /** + * The product or service this support contact point is related to (such as product support for a particular product line). This can be a specific product or product line (e.g. "iPhone") or a general category of products or services (e.g. "smartphones"). + * + * @return {@link Text} or {@link Product} + */ + T getProductSupported(); + + /** + * The product or service this support contact point is related to (such as product support for a particular product line). This can be a specific product or product line (e.g. "iPhone") or a general category of products or services (e.g. "smartphones"). + * + * @param productSupported Text value to set. + */ + void addProductSupported(Text productSupported); + /** + * The product or service this support contact point is related to (such as product support for a particular product line). This can be a specific product or product line (e.g. "iPhone") or a general category of products or services (e.g. "smartphones"). + * + * @param productSupported Product value to set. + */ + void addProductSupported(Product productSupported); + + /** + * The geographic area where the service is provided. + * + * @return {@link AdministrativeArea} or {@link GeoShape} or {@link Place} + */ + List getServiceAreaList(); + + /** + * The geographic area where the service is provided. + * + * @return {@link AdministrativeArea} or {@link GeoShape} or {@link Place} + */ + T getServiceArea(); + + /** + * The geographic area where the service is provided. + * + * @param serviceArea AdministrativeArea value to set. + */ + void addServiceArea(AdministrativeArea serviceArea); + /** + * The geographic area where the service is provided. + * + * @param serviceArea GeoShape value to set. + */ + void addServiceArea(GeoShape serviceArea); + /** + * The geographic area where the service is provided. + * + * @param serviceArea Place value to set. + */ + void addServiceArea(Place serviceArea); + + /** + * The telephone number. + * + * @return {@link Text} + */ + List getTelephoneList(); + + /** + * The telephone number. + * + * @return {@link Text} + */ + Text getTelephone(); + + /** + * The telephone number. + * + * @param telephone Text value to set. + */ + void addTelephone(Text telephone); +} diff --git a/generator/src/test/resources/data/filters/model/ContactPointOption.java b/generator/src/test/resources/data/filters/model/ContactPointOption.java new file mode 100644 index 00000000..c9dc380a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ContactPointOption.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerated options related to a ContactPoint. + * + * @see https://schema.org/ContactPointOption + */ +public interface ContactPointOption extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Country.java b/generator/src/test/resources/data/filters/model/Country.java new file mode 100644 index 00000000..780184a0 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Country.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A country. + * + * @see https://schema.org/Country + */ +public interface Country extends AdministrativeArea { +} diff --git a/generator/src/test/resources/data/filters/model/CreativeWork.java b/generator/src/test/resources/data/filters/model/CreativeWork.java new file mode 100644 index 00000000..f4b584d9 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/CreativeWork.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * The most generic kind of creative work, including books, movies, photographs, software programs, etc. + * + * @see https://schema.org/docs/collab/rNews + * @see https://schema.org/CreativeWork + */ +public interface CreativeWork extends Thing { +} diff --git a/generator/src/test/resources/data/filters/model/CreditCard.java b/generator/src/test/resources/data/filters/model/CreditCard.java new file mode 100644 index 00000000..77fc3931 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/CreditCard.java @@ -0,0 +1,19 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A card payment method of a particular brand or name. Used to mark up a particular payment method and/or the financial product/service that supplies the card account.

    Commonly used values:

    * http://purl.org/goodrelations/v1#AmericanExpress
    * http://purl.org/goodrelations/v1#DinersClub
    * http://purl.org/goodrelations/v1#Discover
    * http://purl.org/goodrelations/v1#JCB
    * http://purl.org/goodrelations/v1#MasterCard
    * http://purl.org/goodrelations/v1#VISA + * + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/docs/collab/FIBO + * @see https://schema.org/CreditCard + */ +public interface CreditCard extends LoanOrCredit, PaymentCard { +} diff --git a/generator/src/test/resources/data/filters/model/DDxElement.java b/generator/src/test/resources/data/filters/model/DDxElement.java new file mode 100644 index 00000000..b88a5166 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DDxElement.java @@ -0,0 +1,67 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalCondition; +import filters.model.MedicalSignOrSymptom; +import java.util.List; + +/** + * An alternative, closely-related condition typically considered later in the differential diagnosis process along with the signs that are used to distinguish it. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DDxElement + */ +public interface DDxElement extends MedicalIntangible { + + /** + * One or more alternative conditions considered in the differential diagnosis process as output of a diagnosis process. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + List getDiagnosisList(); + + /** + * One or more alternative conditions considered in the differential diagnosis process as output of a diagnosis process. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + MedicalCondition getDiagnosis(); + + /** + * One or more alternative conditions considered in the differential diagnosis process as output of a diagnosis process. + * + * @param diagnosis MedicalCondition value to set. + * @see https://health-lifesci.schema.org + */ + void addDiagnosis(MedicalCondition diagnosis); + + /** + * One of a set of signs and symptoms that can be used to distinguish this diagnosis from others in the differential diagnosis. + * + * @return {@link MedicalSignOrSymptom} + * @see https://health-lifesci.schema.org + */ + List getDistinguishingSignList(); + + /** + * One of a set of signs and symptoms that can be used to distinguish this diagnosis from others in the differential diagnosis. + * + * @return {@link MedicalSignOrSymptom} + * @see https://health-lifesci.schema.org + */ + MedicalSignOrSymptom getDistinguishingSign(); + + /** + * One of a set of signs and symptoms that can be used to distinguish this diagnosis from others in the differential diagnosis. + * + * @param distinguishingSign MedicalSignOrSymptom value to set. + * @see https://health-lifesci.schema.org + */ + void addDistinguishingSign(MedicalSignOrSymptom distinguishingSign); +} diff --git a/generator/src/test/resources/data/filters/model/DataCatalog.java b/generator/src/test/resources/data/filters/model/DataCatalog.java new file mode 100644 index 00000000..60fbc01c --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DataCatalog.java @@ -0,0 +1,181 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Dataset; +import filters.model.DefinedTerm; +import filters.model.MeasurementMethodEnum; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A collection of datasets. + * + * @see https://schema.org/docs/collab/DatasetClass + * @see https://schema.org/DataCatalog + */ +public interface DataCatalog extends CreativeWork { + + /** + * A dataset contained in this catalog. + * + * @return {@link Dataset} + */ + List getDatasetList(); + + /** + * A dataset contained in this catalog. + * + * @return {@link Dataset} + */ + Dataset getDataset(); + + /** + * A dataset contained in this catalog. + * + * @param dataset Dataset value to set. + */ + void addDataset(Dataset dataset); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @return {@link Text} or {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + List getMeasurementMethodList(); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @return {@link Text} or {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + T getMeasurementMethod(); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(Text measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod MeasurementMethodEnum value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(MeasurementMethodEnum measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(DefinedTerm measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(URL measurementMethod); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @return {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + List getMeasurementTechniqueList(); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @return {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + T getMeasurementTechnique(); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique MeasurementMethodEnum value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(MeasurementMethodEnum measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(DefinedTerm measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(URL measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(Text measurementTechnique); +} diff --git a/generator/src/test/resources/data/filters/model/DataDownload.java b/generator/src/test/resources/data/filters/model/DataDownload.java new file mode 100644 index 00000000..f93591e2 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DataDownload.java @@ -0,0 +1,159 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DefinedTerm; +import filters.model.MeasurementMethodEnum; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * All or part of a [[Dataset]] in downloadable form. + * + * @see https://schema.org/docs/collab/DatasetClass + * @see https://schema.org/DataDownload + */ +public interface DataDownload extends MediaObject { + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @return {@link Text} or {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + List getMeasurementMethodList(); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @return {@link Text} or {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + T getMeasurementMethod(); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(Text measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod MeasurementMethodEnum value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(MeasurementMethodEnum measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(DefinedTerm measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(URL measurementMethod); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @return {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + List getMeasurementTechniqueList(); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @return {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + T getMeasurementTechnique(); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique MeasurementMethodEnum value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(MeasurementMethodEnum measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(DefinedTerm measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(URL measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(Text measurementTechnique); +} diff --git a/generator/src/test/resources/data/filters/model/DataFeed.java b/generator/src/test/resources/data/filters/model/DataFeed.java new file mode 100644 index 00000000..61715811 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DataFeed.java @@ -0,0 +1,52 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DataFeedItem; +import filters.model.Thing; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A single feed providing structured information about one or more entities or topics. + * + * @see https://schema.org/DataFeed + */ +public interface DataFeed extends Dataset { + + /** + * An item within a data feed. Data feeds may have many elements. + * + * @return {@link DataFeedItem} or {@link Thing} or {@link Text} + */ + List getDataFeedElementList(); + + /** + * An item within a data feed. Data feeds may have many elements. + * + * @return {@link DataFeedItem} or {@link Thing} or {@link Text} + */ + T getDataFeedElement(); + + /** + * An item within a data feed. Data feeds may have many elements. + * + * @param dataFeedElement DataFeedItem value to set. + */ + void addDataFeedElement(DataFeedItem dataFeedElement); + /** + * An item within a data feed. Data feeds may have many elements. + * + * @param dataFeedElement Thing value to set. + */ + void addDataFeedElement(Thing dataFeedElement); + /** + * An item within a data feed. Data feeds may have many elements. + * + * @param dataFeedElement Text value to set. + */ + void addDataFeedElement(Text dataFeedElement); +} diff --git a/generator/src/test/resources/data/filters/model/DataFeedItem.java b/generator/src/test/resources/data/filters/model/DataFeedItem.java new file mode 100644 index 00000000..fc409c73 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DataFeedItem.java @@ -0,0 +1,121 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Thing; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import java.util.List; + +/** + * A single item within a larger data feed. + * + * @see https://schema.org/DataFeedItem + */ +public interface DataFeedItem extends Intangible { + + /** + * The date on which the CreativeWork was created or the item was added to a DataFeed. + * + * @return {@link DateTime} or {@link Date} + */ + List getDateCreatedList(); + + /** + * The date on which the CreativeWork was created or the item was added to a DataFeed. + * + * @return {@link DateTime} or {@link Date} + */ + T getDateCreated(); + + /** + * The date on which the CreativeWork was created or the item was added to a DataFeed. + * + * @param dateCreated DateTime value to set. + */ + void addDateCreated(DateTime dateCreated); + /** + * The date on which the CreativeWork was created or the item was added to a DataFeed. + * + * @param dateCreated Date value to set. + */ + void addDateCreated(Date dateCreated); + + /** + * The datetime the item was removed from the DataFeed. + * + * @return {@link DateTime} or {@link Date} + */ + List getDateDeletedList(); + + /** + * The datetime the item was removed from the DataFeed. + * + * @return {@link DateTime} or {@link Date} + */ + T getDateDeleted(); + + /** + * The datetime the item was removed from the DataFeed. + * + * @param dateDeleted DateTime value to set. + */ + void addDateDeleted(DateTime dateDeleted); + /** + * The datetime the item was removed from the DataFeed. + * + * @param dateDeleted Date value to set. + */ + void addDateDeleted(Date dateDeleted); + + /** + * The date on which the CreativeWork was most recently modified or when the item's entry was modified within a DataFeed. + * + * @return {@link Date} or {@link DateTime} + */ + List getDateModifiedList(); + + /** + * The date on which the CreativeWork was most recently modified or when the item's entry was modified within a DataFeed. + * + * @return {@link Date} or {@link DateTime} + */ + T getDateModified(); + + /** + * The date on which the CreativeWork was most recently modified or when the item's entry was modified within a DataFeed. + * + * @param dateModified Date value to set. + */ + void addDateModified(Date dateModified); + /** + * The date on which the CreativeWork was most recently modified or when the item's entry was modified within a DataFeed. + * + * @param dateModified DateTime value to set. + */ + void addDateModified(DateTime dateModified); + + /** + * An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists'). + * + * @return {@link Thing} + */ + List getItemList(); + + /** + * An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists'). + * + * @return {@link Thing} + */ + Thing getItem(); + + /** + * An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists'). + * + * @param item Thing value to set. + */ + void addItem(Thing item); +} diff --git a/generator/src/test/resources/data/filters/model/Dataset.java b/generator/src/test/resources/data/filters/model/Dataset.java new file mode 100644 index 00000000..c52802df --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Dataset.java @@ -0,0 +1,345 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DataCatalog; +import filters.model.DataDownload; +import filters.model.DefinedTerm; +import filters.model.MeasurementMethodEnum; +import filters.model.Property; +import filters.model.PropertyValue; +import filters.model.StatisticalVariable; +import filters.model.datatype.DateTime; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A body of structured information describing some topic(s) of interest. + * + * @see https://schema.org/docs/collab/DatasetClass + * @see https://schema.org/Dataset + */ +public interface Dataset extends CreativeWork { + + /** + * A data catalog which contains this dataset. + * + * @return {@link DataCatalog} + */ + List getCatalogList(); + + /** + * A data catalog which contains this dataset. + * + * @return {@link DataCatalog} + */ + DataCatalog getCatalog(); + + /** + * A data catalog which contains this dataset. + * + * @param catalog DataCatalog value to set. + */ + void addCatalog(DataCatalog catalog); + + /** + * The range of temporal applicability of a dataset, e.g. for a 2011 census dataset, the year 2011 (in ISO 8601 time interval format). + * + * @return {@link DateTime} + */ + List getDatasetTimeIntervalList(); + + /** + * The range of temporal applicability of a dataset, e.g. for a 2011 census dataset, the year 2011 (in ISO 8601 time interval format). + * + * @return {@link DateTime} + */ + DateTime getDatasetTimeInterval(); + + /** + * The range of temporal applicability of a dataset, e.g. for a 2011 census dataset, the year 2011 (in ISO 8601 time interval format). + * + * @param datasetTimeInterval DateTime value to set. + */ + void addDatasetTimeInterval(DateTime datasetTimeInterval); + + /** + * A downloadable form of this dataset, at a specific location, in a specific format. This property can be repeated if different variations are available. There is no expectation that different downloadable distributions must contain exactly equivalent information (see also [DCAT](https://www.w3.org/TR/vocab-dcat-3/#Class:Distribution) on this point). Different distributions might include or exclude different subsets of the entire dataset, for example. + * + * @return {@link DataDownload} + */ + List getDistributionList(); + + /** + * A downloadable form of this dataset, at a specific location, in a specific format. This property can be repeated if different variations are available. There is no expectation that different downloadable distributions must contain exactly equivalent information (see also [DCAT](https://www.w3.org/TR/vocab-dcat-3/#Class:Distribution) on this point). Different distributions might include or exclude different subsets of the entire dataset, for example. + * + * @return {@link DataDownload} + */ + DataDownload getDistribution(); + + /** + * A downloadable form of this dataset, at a specific location, in a specific format. This property can be repeated if different variations are available. There is no expectation that different downloadable distributions must contain exactly equivalent information (see also [DCAT](https://www.w3.org/TR/vocab-dcat-3/#Class:Distribution) on this point). Different distributions might include or exclude different subsets of the entire dataset, for example. + * + * @param distribution DataDownload value to set. + */ + void addDistribution(DataDownload distribution); + + /** + * A data catalog which contains this dataset (this property was previously 'catalog', preferred name is now 'includedInDataCatalog'). + * + * @return {@link DataCatalog} + */ + List getIncludedDataCatalogList(); + + /** + * A data catalog which contains this dataset (this property was previously 'catalog', preferred name is now 'includedInDataCatalog'). + * + * @return {@link DataCatalog} + */ + DataCatalog getIncludedDataCatalog(); + + /** + * A data catalog which contains this dataset (this property was previously 'catalog', preferred name is now 'includedInDataCatalog'). + * + * @param includedDataCatalog DataCatalog value to set. + */ + void addIncludedDataCatalog(DataCatalog includedDataCatalog); + + /** + * A data catalog which contains this dataset. + * + * @return {@link DataCatalog} + */ + List getIncludedInDataCatalogList(); + + /** + * A data catalog which contains this dataset. + * + * @return {@link DataCatalog} + */ + DataCatalog getIncludedInDataCatalog(); + + /** + * A data catalog which contains this dataset. + * + * @param includedInDataCatalog DataCatalog value to set. + */ + void addIncludedInDataCatalog(DataCatalog includedInDataCatalog); + + /** + * The International Standard Serial Number (ISSN) that identifies this serial publication. You can repeat this property to identify different formats of, or the linking ISSN (ISSN-L) for, this serial publication. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/bibex + */ + List getIssnList(); + + /** + * The International Standard Serial Number (ISSN) that identifies this serial publication. You can repeat this property to identify different formats of, or the linking ISSN (ISSN-L) for, this serial publication. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/bibex + */ + Text getIssn(); + + /** + * The International Standard Serial Number (ISSN) that identifies this serial publication. You can repeat this property to identify different formats of, or the linking ISSN (ISSN-L) for, this serial publication. + * + * @param issn Text value to set. + * @see https://schema.org/docs/collab/bibex + */ + void addIssn(Text issn); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @return {@link Text} or {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + List getMeasurementMethodList(); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @return {@link Text} or {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + T getMeasurementMethod(); + + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(Text measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod MeasurementMethodEnum value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(MeasurementMethodEnum measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(DefinedTerm measurementMethod); + /** + * A subproperty of [[measurementTechnique]] that can be used for specifying specific methods, in particular via [[MeasurementMethodEnum]]. + * + * @param measurementMethod URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementMethod(URL measurementMethod); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @return {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + List getMeasurementTechniqueList(); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @return {@link MeasurementMethodEnum} or {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + T getMeasurementTechnique(); + + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique MeasurementMethodEnum value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(MeasurementMethodEnum measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(DefinedTerm measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(URL measurementTechnique); + /** + * A technique, method or technology used in an [[Observation]], [[StatisticalVariable]] or [[Dataset]] (or [[DataDownload]], [[DataCatalog]]), corresponding to the method used for measuring the corresponding variable(s) (for datasets, described using [[variableMeasured]]; for [[Observation]], a [[StatisticalVariable]]). Often but not necessarily each [[variableMeasured]] will have an explicit representation as (or mapping to) an property such as those defined in Schema.org, or other RDF vocabularies and "knowledge graphs". In that case the subproperty of [[variableMeasured]] called [[measuredProperty]] is applicable. + * + * The [[measurementTechnique]] property helps when extra clarification is needed about how a [[measuredProperty]] was measured. This is oriented towards scientific and scholarly dataset publication but may have broader applicability; it is not intended as a full representation of measurement, but can often serve as a high level summary for dataset discovery. + * + * For example, if [[variableMeasured]] is: molecule concentration, [[measurementTechnique]] could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the [[variableMeasured]] is "depression rating", the [[measurementTechnique]] could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". + * + * If there are several [[variableMeasured]] properties recorded for some given data object, use a [[PropertyValue]] for each [[variableMeasured]] and attach the corresponding [[measurementTechnique]]. The value can also be from an enumeration, organized as a [[MeasurementMetholdEnumeration]]. + * + * @param measurementTechnique Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1425 + */ + void addMeasurementTechnique(Text measurementTechnique); + + /** + * The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a [[StatisticalVariable]]. + * + * @return {@link Property} or {@link PropertyValue} or {@link Text} or {@link StatisticalVariable} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1083 + */ + List getVariableMeasuredList(); + + /** + * The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a [[StatisticalVariable]]. + * + * @return {@link Property} or {@link PropertyValue} or {@link Text} or {@link StatisticalVariable} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1083 + */ + T getVariableMeasured(); + + /** + * The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a [[StatisticalVariable]]. + * + * @param variableMeasured Property value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1083 + */ + void addVariableMeasured(Property variableMeasured); + /** + * The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a [[StatisticalVariable]]. + * + * @param variableMeasured PropertyValue value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1083 + */ + void addVariableMeasured(PropertyValue variableMeasured); + /** + * The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a [[StatisticalVariable]]. + * + * @param variableMeasured Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1083 + */ + void addVariableMeasured(Text variableMeasured); + /** + * The variableMeasured property can indicate (repeated as necessary) the variables that are measured in some dataset, either described as text or as pairs of identifier and description using PropertyValue, or more explicitly as a [[StatisticalVariable]]. + * + * @param variableMeasured StatisticalVariable value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1083 + */ + void addVariableMeasured(StatisticalVariable variableMeasured); +} diff --git a/generator/src/test/resources/data/filters/model/DayOfWeek.java b/generator/src/test/resources/data/filters/model/DayOfWeek.java new file mode 100644 index 00000000..788f5fb1 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DayOfWeek.java @@ -0,0 +1,20 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * The day of the week, e.g. used to specify to which day the opening hours of an OpeningHoursSpecification refer. + * + * Originally, URLs from [GoodRelations](http://purl.org/goodrelations/v1) were used (for [[Monday]], [[Tuesday]], [[Wednesday]], [[Thursday]], [[Friday]], [[Saturday]], [[Sunday]] plus a special entry for [[PublicHolidays]]); these have now been integrated directly into schema.org. + * + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/DayOfWeek + */ +public interface DayOfWeek extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/DefinedRegion.java b/generator/src/test/resources/data/filters/model/DefinedRegion.java new file mode 100644 index 00000000..448a30b7 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DefinedRegion.java @@ -0,0 +1,167 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.Country; +import filters.model.PostalCodeRangeSpecification; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A DefinedRegion is a geographic area defined by potentially arbitrary (rather than political, administrative or natural geographical) criteria. Properties are provided for defining a region by reference to sets of postal codes. + * + * Examples: a delivery destination when shopping. Region where regional pricing is configured. + * + * Requirement 1: + * Country: US + * States: "NY", "CA" + * + * Requirement 2: + * Country: US + * PostalCode Set: { [94000-94585], [97000, 97999], [13000, 13599]} + * { [12345, 12345], [78945, 78945], } + * Region = state, canton, prefecture, autonomous community... + * + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://schema.org/DefinedRegion + */ +public interface DefinedRegion extends Place, StructuredValue { + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @return {@link Country} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getAddressCountryList(); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @return {@link Country} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + T getAddressCountry(); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @param addressCountry Country value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressCountry(Country addressCountry); + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @param addressCountry Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressCountry(Text addressCountry); + + /** + * The region in which the locality is, and which is in the country. For example, California or another appropriate first-level [Administrative division](https://en.wikipedia.org/wiki/List_of_administrative_divisions_by_country). + * + * @return {@link AdministrativeArea} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getAddressRegionList(); + + /** + * The region in which the locality is, and which is in the country. For example, California or another appropriate first-level [Administrative division](https://en.wikipedia.org/wiki/List_of_administrative_divisions_by_country). + * + * @return {@link AdministrativeArea} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + T getAddressRegion(); + + /** + * The region in which the locality is, and which is in the country. For example, California or another appropriate first-level [Administrative division](https://en.wikipedia.org/wiki/List_of_administrative_divisions_by_country). + * + * @param addressRegion AdministrativeArea value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressRegion(AdministrativeArea addressRegion); + /** + * The region in which the locality is, and which is in the country. For example, California or another appropriate first-level [Administrative division](https://en.wikipedia.org/wiki/List_of_administrative_divisions_by_country). + * + * @param addressRegion Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressRegion(Text addressRegion); + + /** + * The postal code. For example, 94043. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getPostalCodeList(); + + /** + * The postal code. For example, 94043. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + Text getPostalCode(); + + /** + * The postal code. For example, 94043. + * + * @param postalCode Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addPostalCode(Text postalCode); + + /** + * A defined range of postal codes indicated by a common textual prefix. Used for non-numeric systems such as UK. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getPostalCodePrefixList(); + + /** + * A defined range of postal codes indicated by a common textual prefix. Used for non-numeric systems such as UK. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + Text getPostalCodePrefix(); + + /** + * A defined range of postal codes indicated by a common textual prefix. Used for non-numeric systems such as UK. + * + * @param postalCodePrefix Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addPostalCodePrefix(Text postalCodePrefix); + + /** + * A defined range of postal codes. + * + * @return {@link PostalCodeRangeSpecification} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getPostalCodeRangeList(); + + /** + * A defined range of postal codes. + * + * @return {@link PostalCodeRangeSpecification} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + PostalCodeRangeSpecification getPostalCodeRange(); + + /** + * A defined range of postal codes. + * + * @param postalCodeRange PostalCodeRangeSpecification value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addPostalCodeRange(PostalCodeRangeSpecification postalCodeRange); +} diff --git a/generator/src/test/resources/data/filters/model/DefinedTerm.java b/generator/src/test/resources/data/filters/model/DefinedTerm.java new file mode 100644 index 00000000..d4d6f5a3 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DefinedTerm.java @@ -0,0 +1,111 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DefinedTermSet; +import filters.model.Thing; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A word, name, acronym, phrase, etc. with a formal definition. Often used in the context of category or subject classification, glossaries or dictionaries, product or creative work types, etc. Use the name property for the term being defined, use termCode if the term has an alpha-numeric code allocated, use description to provide the definition of the term. Use the about property to specify what the term is about. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + * @see https://schema.org/DefinedTerm + */ +public interface DefinedTerm extends Intangible { + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + List getAboutList(); + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + Thing getAbout(); + + /** + * The subject matter of an object. + * + * @param about Thing value to set. + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + void addAbout(Thing about); + + /** + * A [[DefinedTermSet]] that contains this term. + * + * @return {@link URL} or {@link DefinedTermSet} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getInDefinedTermSetList(); + + /** + * A [[DefinedTermSet]] that contains this term. + * + * @return {@link URL} or {@link DefinedTermSet} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + T getInDefinedTermSet(); + + /** + * A [[DefinedTermSet]] that contains this term. + * + * @param inDefinedTermSet URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addInDefinedTermSet(URL inDefinedTermSet); + /** + * A [[DefinedTermSet]] that contains this term. + * + * @param inDefinedTermSet DefinedTermSet value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addInDefinedTermSet(DefinedTermSet inDefinedTermSet); + + /** + * A code that identifies this [[DefinedTerm]] within a [[DefinedTermSet]]. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getTermCodeList(); + + /** + * A code that identifies this [[DefinedTerm]] within a [[DefinedTermSet]]. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + Text getTermCode(); + + /** + * A code that identifies this [[DefinedTerm]] within a [[DefinedTermSet]]. + * + * @param termCode Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addTermCode(Text termCode); +} diff --git a/generator/src/test/resources/data/filters/model/DefinedTermSet.java b/generator/src/test/resources/data/filters/model/DefinedTermSet.java new file mode 100644 index 00000000..f9f92a2d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DefinedTermSet.java @@ -0,0 +1,74 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DefinedTerm; +import filters.model.Thing; +import java.util.List; + +/** + * A set of defined terms, for example a set of categories or a classification scheme, a glossary, dictionary or enumeration. Use the about property to specify what the term set is about. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + * @see https://schema.org/DefinedTermSet + */ +public interface DefinedTermSet extends CreativeWork { + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + List getAboutList(); + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + Thing getAbout(); + + /** + * The subject matter of an object. + * + * @param about Thing value to set. + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + void addAbout(Thing about); + + /** + * A Defined Term contained in this term set. + * + * @return {@link DefinedTerm} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getHasDefinedTermList(); + + /** + * A Defined Term contained in this term set. + * + * @return {@link DefinedTerm} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + DefinedTerm getHasDefinedTerm(); + + /** + * A Defined Term contained in this term set. + * + * @param hasDefinedTerm DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addHasDefinedTerm(DefinedTerm hasDefinedTerm); +} diff --git a/generator/src/test/resources/data/filters/model/DeliveryChargeSpecification.java b/generator/src/test/resources/data/filters/model/DeliveryChargeSpecification.java new file mode 100644 index 00000000..b764623a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DeliveryChargeSpecification.java @@ -0,0 +1,181 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.DeliveryMethod; +import filters.model.GeoShape; +import filters.model.Place; +import filters.model.datatype.Text; +import java.util.List; + +/** + * The price for the delivery of an offer using a particular delivery method. + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/DeliveryChargeSpecification + */ +public interface DeliveryChargeSpecification extends PriceSpecification { + + /** + * The delivery method(s) to which the delivery charge or payment charge specification applies. + * + * @return {@link DeliveryMethod} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAppliesToDeliveryMethodList(); + + /** + * The delivery method(s) to which the delivery charge or payment charge specification applies. + * + * @return {@link DeliveryMethod} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + DeliveryMethod getAppliesToDeliveryMethod(); + + /** + * The delivery method(s) to which the delivery charge or payment charge specification applies. + * + * @param appliesToDeliveryMethod DeliveryMethod value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAppliesToDeliveryMethod(DeliveryMethod appliesToDeliveryMethod); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + List getAreaServedList(); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + T getAreaServed(); + + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Place value to set. + */ + void addAreaServed(Place areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed AdministrativeArea value to set. + */ + void addAreaServed(AdministrativeArea areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed GeoShape value to set. + */ + void addAreaServed(GeoShape areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Text value to set. + */ + void addAreaServed(Text areaServed); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getEligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion GeoShape value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(GeoShape eligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(Text eligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion Place value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(Place eligibleRegion); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + List getIneligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + T getIneligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion GeoShape value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(GeoShape ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Text ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Place value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Place ineligibleRegion); +} diff --git a/generator/src/test/resources/data/filters/model/DeliveryMethod.java b/generator/src/test/resources/data/filters/model/DeliveryMethod.java new file mode 100644 index 00000000..35c0e1f0 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DeliveryMethod.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A delivery method is a standardized procedure for transferring the product or service to the destination of fulfillment chosen by the customer. Delivery methods are characterized by the means of transportation used, and by the organization or group that is the contracting party for the sending organization or person.

    Commonly used values:

    * http://purl.org/goodrelations/v1#DeliveryModeDirectDownload
    * http://purl.org/goodrelations/v1#DeliveryModeFreight
    * http://purl.org/goodrelations/v1#DeliveryModeMail
    * http://purl.org/goodrelations/v1#DeliveryModeOwnFleet
    * http://purl.org/goodrelations/v1#DeliveryModePickUp
    * http://purl.org/goodrelations/v1#DHL
    * http://purl.org/goodrelations/v1#FederalExpress
    * http://purl.org/goodrelations/v1#UPS + * + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/DeliveryMethod + */ +public interface DeliveryMethod extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Demand.java b/generator/src/test/resources/data/filters/model/Demand.java new file mode 100644 index 00000000..2b72f27b --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Demand.java @@ -0,0 +1,1084 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.AggregateOffer; +import filters.model.BusinessEntityType; +import filters.model.BusinessFunction; +import filters.model.CreativeWork; +import filters.model.DeliveryMethod; +import filters.model.Event; +import filters.model.GeoShape; +import filters.model.ItemAvailability; +import filters.model.LoanOrCredit; +import filters.model.MenuItem; +import filters.model.OfferItemCondition; +import filters.model.Organization; +import filters.model.PaymentMethod; +import filters.model.Person; +import filters.model.Place; +import filters.model.PriceSpecification; +import filters.model.Product; +import filters.model.QuantitativeValue; +import filters.model.Service; +import filters.model.Trip; +import filters.model.TypeAndQuantityNode; +import filters.model.WarrantyPromise; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Text; +import filters.model.datatype.Time; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A demand entity represents the public, not necessarily binding, not necessarily exclusive, announcement by an organization or person to seek a certain type of goods or services. For describing demand using this type, the very same properties used for Offer apply. + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/Demand + */ +public interface Demand extends Intangible { + + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @return {@link Text} or {@link LoanOrCredit} or {@link PaymentMethod} + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAcceptedPaymentMethodList(); + + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @return {@link Text} or {@link LoanOrCredit} or {@link PaymentMethod} + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getAcceptedPaymentMethod(); + + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @param acceptedPaymentMethod Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAcceptedPaymentMethod(Text acceptedPaymentMethod); + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @param acceptedPaymentMethod LoanOrCredit value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAcceptedPaymentMethod(LoanOrCredit acceptedPaymentMethod); + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @param acceptedPaymentMethod PaymentMethod value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAcceptedPaymentMethod(PaymentMethod acceptedPaymentMethod); + + /** + * The amount of time that is required between accepting the offer and the actual usage of the resource or service. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAdvanceBookingRequirementList(); + + /** + * The amount of time that is required between accepting the offer and the actual usage of the resource or service. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getAdvanceBookingRequirement(); + + /** + * The amount of time that is required between accepting the offer and the actual usage of the resource or service. + * + * @param advanceBookingRequirement QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAdvanceBookingRequirement(QuantitativeValue advanceBookingRequirement); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + List getAreaServedList(); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + T getAreaServed(); + + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Place value to set. + */ + void addAreaServed(Place areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed AdministrativeArea value to set. + */ + void addAreaServed(AdministrativeArea areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed GeoShape value to set. + */ + void addAreaServed(GeoShape areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Text value to set. + */ + void addAreaServed(Text areaServed); + + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getAsinList(); + + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + T getAsin(); + + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @param asin URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addAsin(URL asin); + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @param asin Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addAsin(Text asin); + + /** + * The availability of this item—for example In stock, Out of stock, Pre-order, etc. + * + * @return {@link ItemAvailability} + */ + List getAvailabilityList(); + + /** + * The availability of this item—for example In stock, Out of stock, Pre-order, etc. + * + * @return {@link ItemAvailability} + */ + ItemAvailability getAvailability(); + + /** + * The availability of this item—for example In stock, Out of stock, Pre-order, etc. + * + * @param availability ItemAvailability value to set. + */ + void addAvailability(ItemAvailability availability); + + /** + * The end of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailabilityEndsList(); + + /** + * The end of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getAvailabilityEnds(); + + /** + * The end of the availability of the product or service included in the offer. + * + * @param availabilityEnds DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityEnds(DateTime availabilityEnds); + /** + * The end of the availability of the product or service included in the offer. + * + * @param availabilityEnds Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityEnds(Date availabilityEnds); + /** + * The end of the availability of the product or service included in the offer. + * + * @param availabilityEnds Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityEnds(Time availabilityEnds); + + /** + * The beginning of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailabilityStartsList(); + + /** + * The beginning of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getAvailabilityStarts(); + + /** + * The beginning of the availability of the product or service included in the offer. + * + * @param availabilityStarts DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityStarts(DateTime availabilityStarts); + /** + * The beginning of the availability of the product or service included in the offer. + * + * @param availabilityStarts Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityStarts(Date availabilityStarts); + /** + * The beginning of the availability of the product or service included in the offer. + * + * @param availabilityStarts Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityStarts(Time availabilityStarts); + + /** + * The place(s) from which the offer can be obtained (e.g. store locations). + * + * @return {@link Place} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailableAtOrFromList(); + + /** + * The place(s) from which the offer can be obtained (e.g. store locations). + * + * @return {@link Place} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Place getAvailableAtOrFrom(); + + /** + * The place(s) from which the offer can be obtained (e.g. store locations). + * + * @param availableAtOrFrom Place value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailableAtOrFrom(Place availableAtOrFrom); + + /** + * The delivery method(s) available for this offer. + * + * @return {@link DeliveryMethod} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailableDeliveryMethodList(); + + /** + * The delivery method(s) available for this offer. + * + * @return {@link DeliveryMethod} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + DeliveryMethod getAvailableDeliveryMethod(); + + /** + * The delivery method(s) available for this offer. + * + * @param availableDeliveryMethod DeliveryMethod value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailableDeliveryMethod(DeliveryMethod availableDeliveryMethod); + + /** + * The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. + * + * @return {@link BusinessFunction} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getBusinessFunctionList(); + + /** + * The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. + * + * @return {@link BusinessFunction} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + BusinessFunction getBusinessFunction(); + + /** + * The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. + * + * @param businessFunction BusinessFunction value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addBusinessFunction(BusinessFunction businessFunction); + + /** + * The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getDeliveryLeadTimeList(); + + /** + * The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getDeliveryLeadTime(); + + /** + * The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. + * + * @param deliveryLeadTime QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addDeliveryLeadTime(QuantitativeValue deliveryLeadTime); + + /** + * The type(s) of customers for which the given offer is valid. + * + * @return {@link BusinessEntityType} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleCustomerTypeList(); + + /** + * The type(s) of customers for which the given offer is valid. + * + * @return {@link BusinessEntityType} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + BusinessEntityType getEligibleCustomerType(); + + /** + * The type(s) of customers for which the given offer is valid. + * + * @param eligibleCustomerType BusinessEntityType value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleCustomerType(BusinessEntityType eligibleCustomerType); + + /** + * The duration for which the given offer is valid. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleDurationList(); + + /** + * The duration for which the given offer is valid. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getEligibleDuration(); + + /** + * The duration for which the given offer is valid. + * + * @param eligibleDuration QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleDuration(QuantitativeValue eligibleDuration); + + /** + * The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleQuantityList(); + + /** + * The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getEligibleQuantity(); + + /** + * The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. + * + * @param eligibleQuantity QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleQuantity(QuantitativeValue eligibleQuantity); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getEligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion GeoShape value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(GeoShape eligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(Text eligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion Place value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(Place eligibleRegion); + + /** + * The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleTransactionVolumeList(); + + /** + * The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + PriceSpecification getEligibleTransactionVolume(); + + /** + * The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. + * + * @param eligibleTransactionVolume PriceSpecification value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleTransactionVolume(PriceSpecification eligibleTransactionVolume); + + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @return {@link Text} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getGtinList(); + + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @return {@link Text} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + T getGtin(); + + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @param gtin Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addGtin(Text gtin); + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @param gtin URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addGtin(URL gtin); + + /** + * The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + */ + List getGtin12List(); + + /** + * The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + */ + Text getGtin12(); + + /** + * The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin12 Text value to set. + */ + void addGtin12(Text gtin12); + + /** + * The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getGtin13List(); + + /** + * The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getGtin13(); + + /** + * The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin13 Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addGtin13(Text gtin13); + + /** + * The GTIN-14 code of the product, or the product to which the offer refers. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getGtin14List(); + + /** + * The GTIN-14 code of the product, or the product to which the offer refers. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getGtin14(); + + /** + * The GTIN-14 code of the product, or the product to which the offer refers. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin14 Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addGtin14(Text gtin14); + + /** + * The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getGtin8List(); + + /** + * The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getGtin8(); + + /** + * The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin8 Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addGtin8(Text gtin8); + + /** + * This links to a node or nodes indicating the exact quantity of the products included in an [[Offer]] or [[ProductCollection]]. + * + * @return {@link TypeAndQuantityNode} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getIncludesObjectList(); + + /** + * This links to a node or nodes indicating the exact quantity of the products included in an [[Offer]] or [[ProductCollection]]. + * + * @return {@link TypeAndQuantityNode} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + TypeAndQuantityNode getIncludesObject(); + + /** + * This links to a node or nodes indicating the exact quantity of the products included in an [[Offer]] or [[ProductCollection]]. + * + * @param includesObject TypeAndQuantityNode value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addIncludesObject(TypeAndQuantityNode includesObject); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + List getIneligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + T getIneligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion GeoShape value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(GeoShape ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Text ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Place value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Place ineligibleRegion); + + /** + * The current approximate inventory level for the item or items. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getInventoryLevelList(); + + /** + * The current approximate inventory level for the item or items. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getInventoryLevel(); + + /** + * The current approximate inventory level for the item or items. + * + * @param inventoryLevel QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addInventoryLevel(QuantitativeValue inventoryLevel); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @return {@link OfferItemCondition} + */ + List getItemConditionList(); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @return {@link OfferItemCondition} + */ + OfferItemCondition getItemCondition(); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @param itemCondition OfferItemCondition value to set. + */ + void addItemCondition(OfferItemCondition itemCondition); + + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @return {@link Product} or {@link Event} or {@link AggregateOffer} or {@link Trip} or {@link CreativeWork} or {@link Service} or {@link MenuItem} + */ + List getItemOfferedList(); + + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @return {@link Product} or {@link Event} or {@link AggregateOffer} or {@link Trip} or {@link CreativeWork} or {@link Service} or {@link MenuItem} + */ + T getItemOffered(); + + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Product value to set. + */ + void addItemOffered(Product itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Event value to set. + */ + void addItemOffered(Event itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered AggregateOffer value to set. + */ + void addItemOffered(AggregateOffer itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Trip value to set. + */ + void addItemOffered(Trip itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered CreativeWork value to set. + */ + void addItemOffered(CreativeWork itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Service value to set. + */ + void addItemOffered(Service itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered MenuItem value to set. + */ + void addItemOffered(MenuItem itemOffered); + + /** + * The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getMpnList(); + + /** + * The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getMpn(); + + /** + * The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers. + * + * @param mpn Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addMpn(Text mpn); + + /** + * One or more detailed price specifications, indicating the unit price and delivery or payment charges. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getPriceSpecificationList(); + + /** + * One or more detailed price specifications, indicating the unit price and delivery or payment charges. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + PriceSpecification getPriceSpecification(); + + /** + * One or more detailed price specifications, indicating the unit price and delivery or payment charges. + * + * @param priceSpecification PriceSpecification value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addPriceSpecification(PriceSpecification priceSpecification); + + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @return {@link Person} or {@link Organization} + */ + List getSellerList(); + + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @return {@link Person} or {@link Organization} + */ + T getSeller(); + + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @param seller Person value to set. + */ + void addSeller(Person seller); + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @param seller Organization value to set. + */ + void addSeller(Organization seller); + + /** + * The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getSerialNumberList(); + + /** + * The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getSerialNumber(); + + /** + * The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer. + * + * @param serialNumber Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addSerialNumber(Text serialNumber); + + /** + * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getSkuList(); + + /** + * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getSku(); + + /** + * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers. + * + * @param sku Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addSku(Text sku); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidFromList(); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidFrom(); + + /** + * The date when the item becomes valid. + * + * @param validFrom DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(DateTime validFrom); + /** + * The date when the item becomes valid. + * + * @param validFrom Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(Date validFrom); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidThroughList(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidThrough(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(DateTime validThrough); + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(Date validThrough); + + /** + * The warranty promise(s) included in the offer. + * + * @return {@link WarrantyPromise} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getWarrantyList(); + + /** + * The warranty promise(s) included in the offer. + * + * @return {@link WarrantyPromise} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + WarrantyPromise getWarranty(); + + /** + * The warranty promise(s) included in the offer. + * + * @param warranty WarrantyPromise value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addWarranty(WarrantyPromise warranty); +} diff --git a/generator/src/test/resources/data/filters/model/DigitalPlatformEnumeration.java b/generator/src/test/resources/data/filters/model/DigitalPlatformEnumeration.java new file mode 100644 index 00000000..f88a5299 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DigitalPlatformEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerates some common technology platforms, for use with properties such as [[actionPlatform]]. It is not supposed to be comprehensive - when a suitable code is not enumerated here, textual or URL values can be used instead. These codes are at a fairly high level and do not deal with versioning and other nuance. Additional codes can be suggested [in github](https://github.com/schemaorg/schemaorg/issues/3057). + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3057 + * @see https://schema.org/DigitalPlatformEnumeration + */ +public interface DigitalPlatformEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Distance.java b/generator/src/test/resources/data/filters/model/Distance.java new file mode 100644 index 00000000..f56cd554 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Distance.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Properties that take Distances as values are of the form '<Number> <Length unit of measure>'. E.g., '7 ft'. + * + * @see https://schema.org/Distance + */ +public interface Distance extends Quantity { +} diff --git a/generator/src/test/resources/data/filters/model/DoseSchedule.java b/generator/src/test/resources/data/filters/model/DoseSchedule.java new file mode 100644 index 00000000..a7be6bfd --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DoseSchedule.java @@ -0,0 +1,123 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.QualitativeValue; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A specific dosing schedule for a drug or supplement. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DoseSchedule + */ +public interface DoseSchedule extends MedicalIntangible { + + /** + * The unit of the dose, e.g. 'mg'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getDoseUnitList(); + + /** + * The unit of the dose, e.g. 'mg'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getDoseUnit(); + + /** + * The unit of the dose, e.g. 'mg'. + * + * @param doseUnit Text value to set. + * @see https://health-lifesci.schema.org + */ + void addDoseUnit(Text doseUnit); + + /** + * The value of the dose, e.g. 500. + * + * @return {@link Number} or {@link QualitativeValue} + * @see https://health-lifesci.schema.org + */ + List getDoseValueList(); + + /** + * The value of the dose, e.g. 500. + * + * @return {@link Number} or {@link QualitativeValue} + * @see https://health-lifesci.schema.org + */ + T getDoseValue(); + + /** + * The value of the dose, e.g. 500. + * + * @param doseValue Number value to set. + * @see https://health-lifesci.schema.org + */ + void addDoseValue(Number doseValue); + /** + * The value of the dose, e.g. 500. + * + * @param doseValue QualitativeValue value to set. + * @see https://health-lifesci.schema.org + */ + void addDoseValue(QualitativeValue doseValue); + + /** + * How often the dose is taken, e.g. 'daily'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getFrequencyList(); + + /** + * How often the dose is taken, e.g. 'daily'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getFrequency(); + + /** + * How often the dose is taken, e.g. 'daily'. + * + * @param frequency Text value to set. + * @see https://health-lifesci.schema.org + */ + void addFrequency(Text frequency); + + /** + * Characteristics of the population for which this is intended, or which typically uses it, e.g. 'adults'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getTargetPopulationList(); + + /** + * Characteristics of the population for which this is intended, or which typically uses it, e.g. 'adults'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getTargetPopulation(); + + /** + * Characteristics of the population for which this is intended, or which typically uses it, e.g. 'adults'. + * + * @param targetPopulation Text value to set. + * @see https://health-lifesci.schema.org + */ + void addTargetPopulation(Text targetPopulation); +} diff --git a/generator/src/test/resources/data/filters/model/DriveWheelConfigurationValue.java b/generator/src/test/resources/data/filters/model/DriveWheelConfigurationValue.java new file mode 100644 index 00000000..db4d30b9 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DriveWheelConfigurationValue.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A value indicating which roadwheels will receive torque. + * + * @see https://schema.org/docs/collab/Automotive_Ontology_Working_Group + * @see https://schema.org/DriveWheelConfigurationValue + */ +public interface DriveWheelConfigurationValue extends QualitativeValue { +} diff --git a/generator/src/test/resources/data/filters/model/Drug.java b/generator/src/test/resources/data/filters/model/Drug.java new file mode 100644 index 00000000..a170c8e1 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Drug.java @@ -0,0 +1,784 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DoseSchedule; +import filters.model.Drug; +import filters.model.DrugClass; +import filters.model.DrugLegalStatus; +import filters.model.DrugPregnancyCategory; +import filters.model.DrugPrescriptionStatus; +import filters.model.DrugStrength; +import filters.model.HealthInsurancePlan; +import filters.model.MaximumDoseSchedule; +import filters.model.MedicalEnumeration; +import filters.model.datatype.Boolean; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A chemical or biologic substance, used as a medical therapy, that has a physiological effect on an organism. Here the term drug is used interchangeably with the term medicine although clinical knowledge makes a clear difference between them. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/Drug + */ +public interface Drug extends Substance, Product { + + /** + * An active ingredient, typically chemical compounds and/or biologic substances. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getActiveIngredientList(); + + /** + * An active ingredient, typically chemical compounds and/or biologic substances. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getActiveIngredient(); + + /** + * An active ingredient, typically chemical compounds and/or biologic substances. + * + * @param activeIngredient Text value to set. + * @see https://health-lifesci.schema.org + */ + void addActiveIngredient(Text activeIngredient); + + /** + * A route by which this drug may be administered, e.g. 'oral'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getAdministrationRouteList(); + + /** + * A route by which this drug may be administered, e.g. 'oral'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getAdministrationRoute(); + + /** + * A route by which this drug may be administered, e.g. 'oral'. + * + * @param administrationRoute Text value to set. + * @see https://health-lifesci.schema.org + */ + void addAdministrationRoute(Text administrationRoute); + + /** + * Any precaution, guidance, contraindication, etc. related to consumption of alcohol while taking this drug. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getAlcoholWarningList(); + + /** + * Any precaution, guidance, contraindication, etc. related to consumption of alcohol while taking this drug. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getAlcoholWarning(); + + /** + * Any precaution, guidance, contraindication, etc. related to consumption of alcohol while taking this drug. + * + * @param alcoholWarning Text value to set. + * @see https://health-lifesci.schema.org + */ + void addAlcoholWarning(Text alcoholWarning); + + /** + * An available dosage strength for the drug. + * + * @return {@link DrugStrength} + * @see https://health-lifesci.schema.org + */ + List getAvailableStrengthList(); + + /** + * An available dosage strength for the drug. + * + * @return {@link DrugStrength} + * @see https://health-lifesci.schema.org + */ + DrugStrength getAvailableStrength(); + + /** + * An available dosage strength for the drug. + * + * @param availableStrength DrugStrength value to set. + * @see https://health-lifesci.schema.org + */ + void addAvailableStrength(DrugStrength availableStrength); + + /** + * Any precaution, guidance, contraindication, etc. related to this drug's use by breastfeeding mothers. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getBreastfeedingWarningList(); + + /** + * Any precaution, guidance, contraindication, etc. related to this drug's use by breastfeeding mothers. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getBreastfeedingWarning(); + + /** + * Any precaution, guidance, contraindication, etc. related to this drug's use by breastfeeding mothers. + * + * @param breastfeedingWarning Text value to set. + * @see https://health-lifesci.schema.org + */ + void addBreastfeedingWarning(Text breastfeedingWarning); + + /** + * Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD). + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getClincalPharmacologyList(); + + /** + * Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD). + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getClincalPharmacology(); + + /** + * Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD). + * + * @param clincalPharmacology Text value to set. + * @see https://health-lifesci.schema.org + */ + void addClincalPharmacology(Text clincalPharmacology); + + /** + * Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD). + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getClinicalPharmacologyList(); + + /** + * Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD). + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getClinicalPharmacology(); + + /** + * Description of the absorption and elimination of drugs, including their concentration (pharmacokinetics, pK) and biological effects (pharmacodynamics, pD). + * + * @param clinicalPharmacology Text value to set. + * @see https://health-lifesci.schema.org + */ + void addClinicalPharmacology(Text clinicalPharmacology); + + /** + * A dosage form in which this drug/supplement is available, e.g. 'tablet', 'suspension', 'injection'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getDosageFormList(); + + /** + * A dosage form in which this drug/supplement is available, e.g. 'tablet', 'suspension', 'injection'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getDosageForm(); + + /** + * A dosage form in which this drug/supplement is available, e.g. 'tablet', 'suspension', 'injection'. + * + * @param dosageForm Text value to set. + * @see https://health-lifesci.schema.org + */ + void addDosageForm(Text dosageForm); + + /** + * A dosing schedule for the drug for a given population, either observed, recommended, or maximum dose based on the type used. + * + * @return {@link DoseSchedule} + * @see https://health-lifesci.schema.org + */ + List getDoseScheduleList(); + + /** + * A dosing schedule for the drug for a given population, either observed, recommended, or maximum dose based on the type used. + * + * @return {@link DoseSchedule} + * @see https://health-lifesci.schema.org + */ + DoseSchedule getDoseSchedule(); + + /** + * A dosing schedule for the drug for a given population, either observed, recommended, or maximum dose based on the type used. + * + * @param doseSchedule DoseSchedule value to set. + * @see https://health-lifesci.schema.org + */ + void addDoseSchedule(DoseSchedule doseSchedule); + + /** + * The class of drug this belongs to (e.g., statins). + * + * @return {@link DrugClass} + * @see https://health-lifesci.schema.org + */ + List getDrugClassList(); + + /** + * The class of drug this belongs to (e.g., statins). + * + * @return {@link DrugClass} + * @see https://health-lifesci.schema.org + */ + DrugClass getDrugClass(); + + /** + * The class of drug this belongs to (e.g., statins). + * + * @param drugClass DrugClass value to set. + * @see https://health-lifesci.schema.org + */ + void addDrugClass(DrugClass drugClass); + + /** + * The unit in which the drug is measured, e.g. '5 mg tablet'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getDrugUnitList(); + + /** + * The unit in which the drug is measured, e.g. '5 mg tablet'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getDrugUnit(); + + /** + * The unit in which the drug is measured, e.g. '5 mg tablet'. + * + * @param drugUnit Text value to set. + * @see https://health-lifesci.schema.org + */ + void addDrugUnit(Text drugUnit); + + /** + * Any precaution, guidance, contraindication, etc. related to consumption of specific foods while taking this drug. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getFoodWarningList(); + + /** + * Any precaution, guidance, contraindication, etc. related to consumption of specific foods while taking this drug. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getFoodWarning(); + + /** + * Any precaution, guidance, contraindication, etc. related to consumption of specific foods while taking this drug. + * + * @param foodWarning Text value to set. + * @see https://health-lifesci.schema.org + */ + void addFoodWarning(Text foodWarning); + + /** + * The insurance plans that cover this drug. + * + * @return {@link HealthInsurancePlan} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getIncludedInHealthInsurancePlanList(); + + /** + * The insurance plans that cover this drug. + * + * @return {@link HealthInsurancePlan} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + HealthInsurancePlan getIncludedInHealthInsurancePlan(); + + /** + * The insurance plans that cover this drug. + * + * @param includedInHealthInsurancePlan HealthInsurancePlan value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addIncludedInHealthInsurancePlan(HealthInsurancePlan includedInHealthInsurancePlan); + + /** + * Another drug that is known to interact with this drug in a way that impacts the effect of this drug or causes a risk to the patient. Note: disease interactions are typically captured as contraindications. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + List getInteractingDrugList(); + + /** + * Another drug that is known to interact with this drug in a way that impacts the effect of this drug or causes a risk to the patient. Note: disease interactions are typically captured as contraindications. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + Drug getInteractingDrug(); + + /** + * Another drug that is known to interact with this drug in a way that impacts the effect of this drug or causes a risk to the patient. Note: disease interactions are typically captured as contraindications. + * + * @param interactingDrug Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addInteractingDrug(Drug interactingDrug); + + /** + * True if the drug is available in a generic form (regardless of name). + * + * @return {@link Boolean} + * @see https://health-lifesci.schema.org + */ + List getIsAvailableGenericallyList(); + + /** + * True if the drug is available in a generic form (regardless of name). + * + * @return {@link Boolean} + * @see https://health-lifesci.schema.org + */ + Boolean getIsAvailableGenerically(); + + /** + * True if the drug is available in a generic form (regardless of name). + * + * @param isAvailableGenerically Boolean value to set. + * @see https://health-lifesci.schema.org + */ + void addIsAvailableGenerically(Boolean isAvailableGenerically); + + /** + * True if this item's name is a proprietary/brand name (vs. generic name). + * + * @return {@link Boolean} + * @see https://health-lifesci.schema.org + */ + List getIsProprietaryList(); + + /** + * True if this item's name is a proprietary/brand name (vs. generic name). + * + * @return {@link Boolean} + * @see https://health-lifesci.schema.org + */ + Boolean getIsProprietary(); + + /** + * True if this item's name is a proprietary/brand name (vs. generic name). + * + * @param isProprietary Boolean value to set. + * @see https://health-lifesci.schema.org + */ + void addIsProprietary(Boolean isProprietary); + + /** + * Link to the drug's label details. + * + * @return {@link URL} + * @see https://health-lifesci.schema.org + */ + List getLabelDetailsList(); + + /** + * Link to the drug's label details. + * + * @return {@link URL} + * @see https://health-lifesci.schema.org + */ + URL getLabelDetails(); + + /** + * Link to the drug's label details. + * + * @param labelDetails URL value to set. + * @see https://health-lifesci.schema.org + */ + void addLabelDetails(URL labelDetails); + + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @return {@link Text} or {@link DrugLegalStatus} or {@link MedicalEnumeration} + * @see https://health-lifesci.schema.org + */ + List getLegalStatusList(); + + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @return {@link Text} or {@link DrugLegalStatus} or {@link MedicalEnumeration} + * @see https://health-lifesci.schema.org + */ + T getLegalStatus(); + + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @param legalStatus Text value to set. + * @see https://health-lifesci.schema.org + */ + void addLegalStatus(Text legalStatus); + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @param legalStatus DrugLegalStatus value to set. + * @see https://health-lifesci.schema.org + */ + void addLegalStatus(DrugLegalStatus legalStatus); + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @param legalStatus MedicalEnumeration value to set. + * @see https://health-lifesci.schema.org + */ + void addLegalStatus(MedicalEnumeration legalStatus); + + /** + * Recommended intake of this supplement for a given population as defined by a specific recommending authority. + * + * @return {@link MaximumDoseSchedule} + * @see https://health-lifesci.schema.org + */ + List getMaximumIntakeList(); + + /** + * Recommended intake of this supplement for a given population as defined by a specific recommending authority. + * + * @return {@link MaximumDoseSchedule} + * @see https://health-lifesci.schema.org + */ + MaximumDoseSchedule getMaximumIntake(); + + /** + * Recommended intake of this supplement for a given population as defined by a specific recommending authority. + * + * @param maximumIntake MaximumDoseSchedule value to set. + * @see https://health-lifesci.schema.org + */ + void addMaximumIntake(MaximumDoseSchedule maximumIntake); + + /** + * The specific biochemical interaction through which this drug or supplement produces its pharmacological effect. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getMechanismOfActionList(); + + /** + * The specific biochemical interaction through which this drug or supplement produces its pharmacological effect. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getMechanismOfAction(); + + /** + * The specific biochemical interaction through which this drug or supplement produces its pharmacological effect. + * + * @param mechanismOfAction Text value to set. + * @see https://health-lifesci.schema.org + */ + void addMechanismOfAction(Text mechanismOfAction); + + /** + * The generic name of this drug or supplement. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getNonProprietaryNameList(); + + /** + * The generic name of this drug or supplement. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getNonProprietaryName(); + + /** + * The generic name of this drug or supplement. + * + * @param nonProprietaryName Text value to set. + * @see https://health-lifesci.schema.org + */ + void addNonProprietaryName(Text nonProprietaryName); + + /** + * Any information related to overdose on a drug, including signs or symptoms, treatments, contact information for emergency response. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getOverdosageList(); + + /** + * Any information related to overdose on a drug, including signs or symptoms, treatments, contact information for emergency response. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getOverdosage(); + + /** + * Any information related to overdose on a drug, including signs or symptoms, treatments, contact information for emergency response. + * + * @param overdosage Text value to set. + * @see https://health-lifesci.schema.org + */ + void addOverdosage(Text overdosage); + + /** + * Pregnancy category of this drug. + * + * @return {@link DrugPregnancyCategory} + * @see https://health-lifesci.schema.org + */ + List getPregnancyCategoryList(); + + /** + * Pregnancy category of this drug. + * + * @return {@link DrugPregnancyCategory} + * @see https://health-lifesci.schema.org + */ + DrugPregnancyCategory getPregnancyCategory(); + + /** + * Pregnancy category of this drug. + * + * @param pregnancyCategory DrugPregnancyCategory value to set. + * @see https://health-lifesci.schema.org + */ + void addPregnancyCategory(DrugPregnancyCategory pregnancyCategory); + + /** + * Any precaution, guidance, contraindication, etc. related to this drug's use during pregnancy. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getPregnancyWarningList(); + + /** + * Any precaution, guidance, contraindication, etc. related to this drug's use during pregnancy. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getPregnancyWarning(); + + /** + * Any precaution, guidance, contraindication, etc. related to this drug's use during pregnancy. + * + * @param pregnancyWarning Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPregnancyWarning(Text pregnancyWarning); + + /** + * Link to prescribing information for the drug. + * + * @return {@link URL} + * @see https://health-lifesci.schema.org + */ + List getPrescribingInfoList(); + + /** + * Link to prescribing information for the drug. + * + * @return {@link URL} + * @see https://health-lifesci.schema.org + */ + URL getPrescribingInfo(); + + /** + * Link to prescribing information for the drug. + * + * @param prescribingInfo URL value to set. + * @see https://health-lifesci.schema.org + */ + void addPrescribingInfo(URL prescribingInfo); + + /** + * Indicates the status of drug prescription, e.g. local catalogs classifications or whether the drug is available by prescription or over-the-counter, etc. + * + * @return {@link DrugPrescriptionStatus} or {@link Text} + * @see https://health-lifesci.schema.org + */ + List getPrescriptionStatusList(); + + /** + * Indicates the status of drug prescription, e.g. local catalogs classifications or whether the drug is available by prescription or over-the-counter, etc. + * + * @return {@link DrugPrescriptionStatus} or {@link Text} + * @see https://health-lifesci.schema.org + */ + T getPrescriptionStatus(); + + /** + * Indicates the status of drug prescription, e.g. local catalogs classifications or whether the drug is available by prescription or over-the-counter, etc. + * + * @param prescriptionStatus DrugPrescriptionStatus value to set. + * @see https://health-lifesci.schema.org + */ + void addPrescriptionStatus(DrugPrescriptionStatus prescriptionStatus); + /** + * Indicates the status of drug prescription, e.g. local catalogs classifications or whether the drug is available by prescription or over-the-counter, etc. + * + * @param prescriptionStatus Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPrescriptionStatus(Text prescriptionStatus); + + /** + * Proprietary name given to the diet plan, typically by its originator or creator. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getProprietaryNameList(); + + /** + * Proprietary name given to the diet plan, typically by its originator or creator. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getProprietaryName(); + + /** + * Proprietary name given to the diet plan, typically by its originator or creator. + * + * @param proprietaryName Text value to set. + * @see https://health-lifesci.schema.org + */ + void addProprietaryName(Text proprietaryName); + + /** + * Any other drug related to this one, for example commonly-prescribed alternatives. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + List getRelatedDrugList(); + + /** + * Any other drug related to this one, for example commonly-prescribed alternatives. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + Drug getRelatedDrug(); + + /** + * Any other drug related to this one, for example commonly-prescribed alternatives. + * + * @param relatedDrug Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addRelatedDrug(Drug relatedDrug); + + /** + * The RxCUI drug identifier from RXNORM. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getRxcuiList(); + + /** + * The RxCUI drug identifier from RXNORM. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getRxcui(); + + /** + * The RxCUI drug identifier from RXNORM. + * + * @param rxcui Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addRxcui(Text rxcui); + + /** + * Any FDA or other warnings about the drug (text or URL). + * + * @return {@link URL} or {@link Text} + * @see https://health-lifesci.schema.org + */ + List getWarningList(); + + /** + * Any FDA or other warnings about the drug (text or URL). + * + * @return {@link URL} or {@link Text} + * @see https://health-lifesci.schema.org + */ + T getWarning(); + + /** + * Any FDA or other warnings about the drug (text or URL). + * + * @param warning URL value to set. + * @see https://health-lifesci.schema.org + */ + void addWarning(URL warning); + /** + * Any FDA or other warnings about the drug (text or URL). + * + * @param warning Text value to set. + * @see https://health-lifesci.schema.org + */ + void addWarning(Text warning); +} diff --git a/generator/src/test/resources/data/filters/model/DrugClass.java b/generator/src/test/resources/data/filters/model/DrugClass.java new file mode 100644 index 00000000..ae894443 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DrugClass.java @@ -0,0 +1,42 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Drug; +import java.util.List; + +/** + * A class of medical drugs, e.g., statins. Classes can represent general pharmacological class, common mechanisms of action, common physiological effects, etc. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DrugClass + */ +public interface DrugClass extends MedicalEntity { + + /** + * Specifying a drug or medicine used in a medication procedure. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + List getDrugList(); + + /** + * Specifying a drug or medicine used in a medication procedure. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + Drug getDrug(); + + /** + * Specifying a drug or medicine used in a medication procedure. + * + * @param drug Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addDrug(Drug drug); +} diff --git a/generator/src/test/resources/data/filters/model/DrugCostCategory.java b/generator/src/test/resources/data/filters/model/DrugCostCategory.java new file mode 100644 index 00000000..ff08e0e9 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DrugCostCategory.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerated categories of medical drug costs. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DrugCostCategory + */ +public interface DrugCostCategory extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/DrugLegalStatus.java b/generator/src/test/resources/data/filters/model/DrugLegalStatus.java new file mode 100644 index 00000000..8206c495 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DrugLegalStatus.java @@ -0,0 +1,42 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import java.util.List; + +/** + * The legal availability status of a medical drug. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DrugLegalStatus + */ +public interface DrugLegalStatus extends MedicalIntangible { + + /** + * The location in which the status applies. + * + * @return {@link AdministrativeArea} + * @see https://health-lifesci.schema.org + */ + List getApplicableLocationList(); + + /** + * The location in which the status applies. + * + * @return {@link AdministrativeArea} + * @see https://health-lifesci.schema.org + */ + AdministrativeArea getApplicableLocation(); + + /** + * The location in which the status applies. + * + * @param applicableLocation AdministrativeArea value to set. + * @see https://health-lifesci.schema.org + */ + void addApplicableLocation(AdministrativeArea applicableLocation); +} diff --git a/generator/src/test/resources/data/filters/model/DrugPregnancyCategory.java b/generator/src/test/resources/data/filters/model/DrugPregnancyCategory.java new file mode 100644 index 00000000..3675369b --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DrugPregnancyCategory.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Categories that represent an assessment of the risk of fetal injury due to a drug or pharmaceutical used as directed by the mother during pregnancy. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DrugPregnancyCategory + */ +public interface DrugPregnancyCategory extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/DrugPrescriptionStatus.java b/generator/src/test/resources/data/filters/model/DrugPrescriptionStatus.java new file mode 100644 index 00000000..aaad9330 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DrugPrescriptionStatus.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Indicates whether this drug is available by prescription or over-the-counter. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DrugPrescriptionStatus + */ +public interface DrugPrescriptionStatus extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/DrugStrength.java b/generator/src/test/resources/data/filters/model/DrugStrength.java new file mode 100644 index 00000000..e558fcc8 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/DrugStrength.java @@ -0,0 +1,141 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.MaximumDoseSchedule; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A specific strength in which a medical drug is available in a specific country. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/DrugStrength + */ +public interface DrugStrength extends MedicalIntangible { + + /** + * An active ingredient, typically chemical compounds and/or biologic substances. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getActiveIngredientList(); + + /** + * An active ingredient, typically chemical compounds and/or biologic substances. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getActiveIngredient(); + + /** + * An active ingredient, typically chemical compounds and/or biologic substances. + * + * @param activeIngredient Text value to set. + * @see https://health-lifesci.schema.org + */ + void addActiveIngredient(Text activeIngredient); + + /** + * The location in which the strength is available. + * + * @return {@link AdministrativeArea} + * @see https://health-lifesci.schema.org + */ + List getAvailableInList(); + + /** + * The location in which the strength is available. + * + * @return {@link AdministrativeArea} + * @see https://health-lifesci.schema.org + */ + AdministrativeArea getAvailableIn(); + + /** + * The location in which the strength is available. + * + * @param availableIn AdministrativeArea value to set. + * @see https://health-lifesci.schema.org + */ + void addAvailableIn(AdministrativeArea availableIn); + + /** + * Recommended intake of this supplement for a given population as defined by a specific recommending authority. + * + * @return {@link MaximumDoseSchedule} + * @see https://health-lifesci.schema.org + */ + List getMaximumIntakeList(); + + /** + * Recommended intake of this supplement for a given population as defined by a specific recommending authority. + * + * @return {@link MaximumDoseSchedule} + * @see https://health-lifesci.schema.org + */ + MaximumDoseSchedule getMaximumIntake(); + + /** + * Recommended intake of this supplement for a given population as defined by a specific recommending authority. + * + * @param maximumIntake MaximumDoseSchedule value to set. + * @see https://health-lifesci.schema.org + */ + void addMaximumIntake(MaximumDoseSchedule maximumIntake); + + /** + * The units of an active ingredient's strength, e.g. mg. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getStrengthUnitList(); + + /** + * The units of an active ingredient's strength, e.g. mg. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getStrengthUnit(); + + /** + * The units of an active ingredient's strength, e.g. mg. + * + * @param strengthUnit Text value to set. + * @see https://health-lifesci.schema.org + */ + void addStrengthUnit(Text strengthUnit); + + /** + * The value of an active ingredient's strength, e.g. 325. + * + * @return {@link Number} + * @see https://health-lifesci.schema.org + */ + List getStrengthValueList(); + + /** + * The value of an active ingredient's strength, e.g. 325. + * + * @return {@link Number} + * @see https://health-lifesci.schema.org + */ + Number getStrengthValue(); + + /** + * The value of an active ingredient's strength, e.g. 325. + * + * @param strengthValue Number value to set. + * @see https://health-lifesci.schema.org + */ + void addStrengthValue(Number strengthValue); +} diff --git a/generator/src/test/resources/data/filters/model/Duration.java b/generator/src/test/resources/data/filters/model/Duration.java new file mode 100644 index 00000000..e78c4f3f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Duration.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Quantity: Duration (use [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @see https://schema.org/Duration + */ +public interface Duration extends Quantity { +} diff --git a/generator/src/test/resources/data/filters/model/EUEnergyEfficiencyEnumeration.java b/generator/src/test/resources/data/filters/model/EUEnergyEfficiencyEnumeration.java new file mode 100644 index 00000000..854de3fa --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EUEnergyEfficiencyEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerates the EU energy efficiency classes A-G as well as A+, A++, and A+++ as defined in EU directive 2017/1369. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + * @see https://schema.org/EUEnergyEfficiencyEnumeration + */ +public interface EUEnergyEfficiencyEnumeration extends EnergyEfficiencyEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/EducationalOccupationalCredential.java b/generator/src/test/resources/data/filters/model/EducationalOccupationalCredential.java new file mode 100644 index 00000000..39d50425 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EducationalOccupationalCredential.java @@ -0,0 +1,228 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.DefinedTerm; +import filters.model.Duration; +import filters.model.Organization; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * An educational or occupational credential. A diploma, academic degree, certification, qualification, badge, etc., that may be awarded to a person or other entity that meets the requirements defined by the credentialer. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://schema.org/EducationalOccupationalCredential + */ +public interface EducationalOccupationalCredential extends CreativeWork { + + /** + * Knowledge, skill, ability or personal attribute that must be demonstrated by a person or other entity in order to do something such as earn an Educational Occupational Credential or understand a LearningResource. + * + * @return {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getCompetencyRequiredList(); + + /** + * Knowledge, skill, ability or personal attribute that must be demonstrated by a person or other entity in order to do something such as earn an Educational Occupational Credential or understand a LearningResource. + * + * @return {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + T getCompetencyRequired(); + + /** + * Knowledge, skill, ability or personal attribute that must be demonstrated by a person or other entity in order to do something such as earn an Educational Occupational Credential or understand a LearningResource. + * + * @param competencyRequired DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addCompetencyRequired(DefinedTerm competencyRequired); + /** + * Knowledge, skill, ability or personal attribute that must be demonstrated by a person or other entity in order to do something such as earn an Educational Occupational Credential or understand a LearningResource. + * + * @param competencyRequired URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addCompetencyRequired(URL competencyRequired); + /** + * Knowledge, skill, ability or personal attribute that must be demonstrated by a person or other entity in order to do something such as earn an Educational Occupational Credential or understand a LearningResource. + * + * @param competencyRequired Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addCompetencyRequired(Text competencyRequired); + + /** + * The category or type of credential being described, for example "degree”, “certificate”, “badge”, or more specific term. + * + * @return {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getCredentialCategoryList(); + + /** + * The category or type of credential being described, for example "degree”, “certificate”, “badge”, or more specific term. + * + * @return {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + T getCredentialCategory(); + + /** + * The category or type of credential being described, for example "degree”, “certificate”, “badge”, or more specific term. + * + * @param credentialCategory DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addCredentialCategory(DefinedTerm credentialCategory); + /** + * The category or type of credential being described, for example "degree”, “certificate”, “badge”, or more specific term. + * + * @param credentialCategory URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addCredentialCategory(URL credentialCategory); + /** + * The category or type of credential being described, for example "degree”, “certificate”, “badge”, or more specific term. + * + * @param credentialCategory Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addCredentialCategory(Text credentialCategory); + + /** + * The level in terms of progression through an educational or training context. Examples of educational levels include 'beginner', 'intermediate' or 'advanced', and formal sets of level indicators. + * + * @return {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getEducationalLevelList(); + + /** + * The level in terms of progression through an educational or training context. Examples of educational levels include 'beginner', 'intermediate' or 'advanced', and formal sets of level indicators. + * + * @return {@link DefinedTerm} or {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + T getEducationalLevel(); + + /** + * The level in terms of progression through an educational or training context. Examples of educational levels include 'beginner', 'intermediate' or 'advanced', and formal sets of level indicators. + * + * @param educationalLevel DefinedTerm value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addEducationalLevel(DefinedTerm educationalLevel); + /** + * The level in terms of progression through an educational or training context. Examples of educational levels include 'beginner', 'intermediate' or 'advanced', and formal sets of level indicators. + * + * @param educationalLevel URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addEducationalLevel(URL educationalLevel); + /** + * The level in terms of progression through an educational or training context. Examples of educational levels include 'beginner', 'intermediate' or 'advanced', and formal sets of level indicators. + * + * @param educationalLevel Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addEducationalLevel(Text educationalLevel); + + /** + * An organization that acknowledges the validity, value or utility of a credential. Note: recognition may include a process of quality assurance or accreditation. + * + * @return {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getRecognizedByList(); + + /** + * An organization that acknowledges the validity, value or utility of a credential. Note: recognition may include a process of quality assurance or accreditation. + * + * @return {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + Organization getRecognizedBy(); + + /** + * An organization that acknowledges the validity, value or utility of a credential. Note: recognition may include a process of quality assurance or accreditation. + * + * @param recognizedBy Organization value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addRecognizedBy(Organization recognizedBy); + + /** + * The duration of validity of a permit or similar thing. + * + * @return {@link Duration} + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getValidForList(); + + /** + * The duration of validity of a permit or similar thing. + * + * @return {@link Duration} + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + Duration getValidFor(); + + /** + * The duration of validity of a permit or similar thing. + * + * @param validFor Duration value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addValidFor(Duration validFor); + + /** + * The geographic area where the item is valid. Applies for example to a [[Permit]], a [[Certification]], or an [[EducationalOccupationalCredential]]. + * + * @return {@link AdministrativeArea} + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + List getValidInList(); + + /** + * The geographic area where the item is valid. Applies for example to a [[Permit]], a [[Certification]], or an [[EducationalOccupationalCredential]]. + * + * @return {@link AdministrativeArea} + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + AdministrativeArea getValidIn(); + + /** + * The geographic area where the item is valid. Applies for example to a [[Permit]], a [[Certification]], or an [[EducationalOccupationalCredential]]. + * + * @param validIn AdministrativeArea value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1779 + */ + void addValidIn(AdministrativeArea validIn); +} diff --git a/generator/src/test/resources/data/filters/model/EducationalOrganization.java b/generator/src/test/resources/data/filters/model/EducationalOrganization.java new file mode 100644 index 00000000..e3056cca --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EducationalOrganization.java @@ -0,0 +1,38 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Person; +import java.util.List; + +/** + * An educational organization. + * + * @see https://schema.org/EducationalOrganization + */ +public interface EducationalOrganization extends Organization, CivicStructure { + + /** + * Alumni of an organization. + * + * @return {@link Person} + */ + List getAlumniList(); + + /** + * Alumni of an organization. + * + * @return {@link Person} + */ + Person getAlumni(); + + /** + * Alumni of an organization. + * + * @param alumni Person value to set. + */ + void addAlumni(Person alumni); +} diff --git a/generator/src/test/resources/data/filters/model/Energy.java b/generator/src/test/resources/data/filters/model/Energy.java new file mode 100644 index 00000000..086ae2ad --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Energy.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Properties that take Energy as values are of the form '<Number> <Energy unit of measure>'. + * + * @see https://schema.org/Energy + */ +public interface Energy extends Quantity { +} diff --git a/generator/src/test/resources/data/filters/model/EnergyConsumptionDetails.java b/generator/src/test/resources/data/filters/model/EnergyConsumptionDetails.java new file mode 100644 index 00000000..09c9cf2a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EnergyConsumptionDetails.java @@ -0,0 +1,101 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.EUEnergyEfficiencyEnumeration; +import filters.model.EnergyEfficiencyEnumeration; +import java.util.List; + +/** + * EnergyConsumptionDetails represents information related to the energy efficiency of a product that consumes energy. The information that can be provided is based on international regulations such as for example [EU directive 2017/1369](https://eur-lex.europa.eu/eli/reg/2017/1369/oj) for energy labeling and the [Energy labeling rule](https://www.ftc.gov/enforcement/rules/rulemaking-regulatory-reform-proceedings/energy-water-use-labeling-consumer) under the Energy Policy and Conservation Act (EPCA) in the US. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + * @see https://schema.org/EnergyConsumptionDetails + */ +public interface EnergyConsumptionDetails extends Intangible { + + /** + * Specifies the most energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++. + * + * @return {@link EUEnergyEfficiencyEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + List getEnergyEfficiencyScaleMaxList(); + + /** + * Specifies the most energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++. + * + * @return {@link EUEnergyEfficiencyEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + EUEnergyEfficiencyEnumeration getEnergyEfficiencyScaleMax(); + + /** + * Specifies the most energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++. + * + * @param energyEfficiencyScaleMax EUEnergyEfficiencyEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + void addEnergyEfficiencyScaleMax(EUEnergyEfficiencyEnumeration energyEfficiencyScaleMax); + + /** + * Specifies the least energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++. + * + * @return {@link EUEnergyEfficiencyEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + List getEnergyEfficiencyScaleMinList(); + + /** + * Specifies the least energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++. + * + * @return {@link EUEnergyEfficiencyEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + EUEnergyEfficiencyEnumeration getEnergyEfficiencyScaleMin(); + + /** + * Specifies the least energy efficient class on the regulated EU energy consumption scale for the product category a product belongs to. For example, energy consumption for televisions placed on the market after January 1, 2020 is scaled from D to A+++. + * + * @param energyEfficiencyScaleMin EUEnergyEfficiencyEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + void addEnergyEfficiencyScaleMin(EUEnergyEfficiencyEnumeration energyEfficiencyScaleMin); + + /** + * Defines the energy efficiency Category (which could be either a rating out of range of values or a yes/no certification) for a product according to an international energy efficiency standard. + * + * @return {@link EnergyEfficiencyEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + List getHasEnergyEfficiencyCategoryList(); + + /** + * Defines the energy efficiency Category (which could be either a rating out of range of values or a yes/no certification) for a product according to an international energy efficiency standard. + * + * @return {@link EnergyEfficiencyEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + EnergyEfficiencyEnumeration getHasEnergyEfficiencyCategory(); + + /** + * Defines the energy efficiency Category (which could be either a rating out of range of values or a yes/no certification) for a product according to an international energy efficiency standard. + * + * @param hasEnergyEfficiencyCategory EnergyEfficiencyEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + */ + void addHasEnergyEfficiencyCategory(EnergyEfficiencyEnumeration hasEnergyEfficiencyCategory); +} diff --git a/generator/src/test/resources/data/filters/model/EnergyEfficiencyEnumeration.java b/generator/src/test/resources/data/filters/model/EnergyEfficiencyEnumeration.java new file mode 100644 index 00000000..7f7dfbbf --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EnergyEfficiencyEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerates energy efficiency levels (also known as "classes" or "ratings") and certifications that are part of several international energy efficiency standards. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + * @see https://schema.org/EnergyEfficiencyEnumeration + */ +public interface EnergyEfficiencyEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/EnergyStarEnergyEfficiencyEnumeration.java b/generator/src/test/resources/data/filters/model/EnergyStarEnergyEfficiencyEnumeration.java new file mode 100644 index 00000000..732e8c52 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EnergyStarEnergyEfficiencyEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Used to indicate whether a product is EnergyStar certified. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2670 + * @see https://schema.org/EnergyStarEnergyEfficiencyEnumeration + */ +public interface EnergyStarEnergyEfficiencyEnumeration extends EnergyEfficiencyEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/EntryPoint.java b/generator/src/test/resources/data/filters/model/EntryPoint.java new file mode 100644 index 00000000..d29c8570 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EntryPoint.java @@ -0,0 +1,180 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DigitalPlatformEnumeration; +import filters.model.SoftwareApplication; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * An entry point, within some Web-based protocol. + * + * @see https://schema.org/docs/collab/ActionCollabClass + * @see https://schema.org/EntryPoint + */ +public interface EntryPoint extends Intangible { + + /** + * An application that can complete the request. + * + * @return {@link SoftwareApplication} + */ + List getActionApplicationList(); + + /** + * An application that can complete the request. + * + * @return {@link SoftwareApplication} + */ + SoftwareApplication getActionApplication(); + + /** + * An application that can complete the request. + * + * @param actionApplication SoftwareApplication value to set. + */ + void addActionApplication(SoftwareApplication actionApplication); + + /** + * The high level platform(s) where the Action can be performed for the given URL. To specify a specific application or operating system instance, use actionApplication. + * + * @return {@link DigitalPlatformEnumeration} or {@link URL} or {@link Text} + */ + List getActionPlatformList(); + + /** + * The high level platform(s) where the Action can be performed for the given URL. To specify a specific application or operating system instance, use actionApplication. + * + * @return {@link DigitalPlatformEnumeration} or {@link URL} or {@link Text} + */ + T getActionPlatform(); + + /** + * The high level platform(s) where the Action can be performed for the given URL. To specify a specific application or operating system instance, use actionApplication. + * + * @param actionPlatform DigitalPlatformEnumeration value to set. + */ + void addActionPlatform(DigitalPlatformEnumeration actionPlatform); + /** + * The high level platform(s) where the Action can be performed for the given URL. To specify a specific application or operating system instance, use actionApplication. + * + * @param actionPlatform URL value to set. + */ + void addActionPlatform(URL actionPlatform); + /** + * The high level platform(s) where the Action can be performed for the given URL. To specify a specific application or operating system instance, use actionApplication. + * + * @param actionPlatform Text value to set. + */ + void addActionPlatform(Text actionPlatform); + + /** + * An application that can complete the request. + * + * @return {@link SoftwareApplication} + */ + List getApplicationList(); + + /** + * An application that can complete the request. + * + * @return {@link SoftwareApplication} + */ + SoftwareApplication getApplication(); + + /** + * An application that can complete the request. + * + * @param application SoftwareApplication value to set. + */ + void addApplication(SoftwareApplication application); + + /** + * The supported content type(s) for an EntryPoint response. + * + * @return {@link Text} + */ + List getContentTypeList(); + + /** + * The supported content type(s) for an EntryPoint response. + * + * @return {@link Text} + */ + Text getContentType(); + + /** + * The supported content type(s) for an EntryPoint response. + * + * @param contentType Text value to set. + */ + void addContentType(Text contentType); + + /** + * The supported encoding type(s) for an EntryPoint request. + * + * @return {@link Text} + */ + List getEncodingTypeList(); + + /** + * The supported encoding type(s) for an EntryPoint request. + * + * @return {@link Text} + */ + Text getEncodingType(); + + /** + * The supported encoding type(s) for an EntryPoint request. + * + * @param encodingType Text value to set. + */ + void addEncodingType(Text encodingType); + + /** + * An HTTP method that specifies the appropriate HTTP method for a request to an HTTP EntryPoint. Values are capitalized strings as used in HTTP. + * + * @return {@link Text} + */ + List getHttpMethodList(); + + /** + * An HTTP method that specifies the appropriate HTTP method for a request to an HTTP EntryPoint. Values are capitalized strings as used in HTTP. + * + * @return {@link Text} + */ + Text getHttpMethod(); + + /** + * An HTTP method that specifies the appropriate HTTP method for a request to an HTTP EntryPoint. Values are capitalized strings as used in HTTP. + * + * @param httpMethod Text value to set. + */ + void addHttpMethod(Text httpMethod); + + /** + * An url template (RFC6570) that will be used to construct the target of the execution of the action. + * + * @return {@link Text} + */ + List getUrlTemplateList(); + + /** + * An url template (RFC6570) that will be used to construct the target of the execution of the action. + * + * @return {@link Text} + */ + Text getUrlTemplate(); + + /** + * An url template (RFC6570) that will be used to construct the target of the execution of the action. + * + * @param urlTemplate Text value to set. + */ + void addUrlTemplate(Text urlTemplate); +} diff --git a/generator/src/test/resources/data/filters/model/Enumeration.java b/generator/src/test/resources/data/filters/model/Enumeration.java new file mode 100644 index 00000000..7816418e --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Enumeration.java @@ -0,0 +1,57 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Class; +import filters.model.Enumeration; +import filters.model.Property; +import java.util.List; + +/** + * Lists or enumerations—for example, a list of cuisines or music genres, etc. + * + * @see https://schema.org/Enumeration + */ +public interface Enumeration extends Intangible { + + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @return {@link Property} or {@link Class} or {@link Enumeration} + * @see https://meta.schema.org + */ + List getSupersededByList(); + + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @return {@link Property} or {@link Class} or {@link Enumeration} + * @see https://meta.schema.org + */ + T getSupersededBy(); + + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @param supersededBy Property value to set. + * @see https://meta.schema.org + */ + void addSupersededBy(Property supersededBy); + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @param supersededBy Class value to set. + * @see https://meta.schema.org + */ + void addSupersededBy(Class supersededBy); + /** + * Relates a term (i.e. a property, class or enumeration) to one that supersedes it. + * + * @param supersededBy Enumeration value to set. + * @see https://meta.schema.org + */ + void addSupersededBy(Enumeration supersededBy); +} diff --git a/generator/src/test/resources/data/filters/model/Event.java b/generator/src/test/resources/data/filters/model/Event.java new file mode 100644 index 00000000..a476fb2f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Event.java @@ -0,0 +1,1185 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AggregateRating; +import filters.model.Audience; +import filters.model.CreativeWork; +import filters.model.DefinedTerm; +import filters.model.Demand; +import filters.model.Duration; +import filters.model.Event; +import filters.model.EventAttendanceModeEnumeration; +import filters.model.EventStatusType; +import filters.model.Grant; +import filters.model.Language; +import filters.model.Offer; +import filters.model.Organization; +import filters.model.PerformingGroup; +import filters.model.Person; +import filters.model.Place; +import filters.model.PostalAddress; +import filters.model.QuantitativeValue; +import filters.model.Review; +import filters.model.Schedule; +import filters.model.Thing; +import filters.model.VirtualLocation; +import filters.model.datatype.Boolean; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Integer; +import filters.model.datatype.Text; +import filters.model.datatype.Time; +import filters.model.datatype.URL; +import java.util.List; + +/** + * An event happening at a certain time and location, such as a concert, lecture, or festival. Ticketing information may be added via the [[offers]] property. Repeated events may be structured as separate Event objects. + * + * @see https://schema.org/Event + */ +public interface Event extends Thing { + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + List getAboutList(); + + /** + * The subject matter of an object. + * + * @return {@link Thing} + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + Thing getAbout(); + + /** + * The subject matter of an object. + * + * @param about Thing value to set. + * @see https://github.com/schemaorg/schemaorg/issues/4588 + * @see https://github.com/schemaorg/schemaorg/issues/1670 + */ + void addAbout(Thing about); + + /** + * An actor (individual or a group), e.g. in TV, radio, movie, video games etc., or in an event. Actors can be associated with individual items or with a series, episode, clip. + * + * @return {@link PerformingGroup} or {@link Person} + */ + List getActorList(); + + /** + * An actor (individual or a group), e.g. in TV, radio, movie, video games etc., or in an event. Actors can be associated with individual items or with a series, episode, clip. + * + * @return {@link PerformingGroup} or {@link Person} + */ + T getActor(); + + /** + * An actor (individual or a group), e.g. in TV, radio, movie, video games etc., or in an event. Actors can be associated with individual items or with a series, episode, clip. + * + * @param actor PerformingGroup value to set. + */ + void addActor(PerformingGroup actor); + /** + * An actor (individual or a group), e.g. in TV, radio, movie, video games etc., or in an event. Actors can be associated with individual items or with a series, episode, clip. + * + * @param actor Person value to set. + */ + void addActor(Person actor); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @return {@link AggregateRating} + */ + List getAggregateRatingList(); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @return {@link AggregateRating} + */ + AggregateRating getAggregateRating(); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @param aggregateRating AggregateRating value to set. + */ + void addAggregateRating(AggregateRating aggregateRating); + + /** + * A person or organization attending the event. + * + * @return {@link Person} or {@link Organization} + */ + List getAttendeeList(); + + /** + * A person or organization attending the event. + * + * @return {@link Person} or {@link Organization} + */ + T getAttendee(); + + /** + * A person or organization attending the event. + * + * @param attendee Person value to set. + */ + void addAttendee(Person attendee); + /** + * A person or organization attending the event. + * + * @param attendee Organization value to set. + */ + void addAttendee(Organization attendee); + + /** + * A person attending the event. + * + * @return {@link Person} or {@link Organization} + */ + List getAttendeesList(); + + /** + * A person attending the event. + * + * @return {@link Person} or {@link Organization} + */ + T getAttendees(); + + /** + * A person attending the event. + * + * @param attendees Person value to set. + */ + void addAttendees(Person attendees); + /** + * A person attending the event. + * + * @param attendees Organization value to set. + */ + void addAttendees(Organization attendees); + + /** + * An intended audience, i.e. a group for whom something was created. + * + * @return {@link Audience} + */ + List getAudienceList(); + + /** + * An intended audience, i.e. a group for whom something was created. + * + * @return {@link Audience} + */ + Audience getAudience(); + + /** + * An intended audience, i.e. a group for whom something was created. + * + * @param audience Audience value to set. + */ + void addAudience(Audience audience); + + /** + * The person or organization who wrote a composition, or who is the composer of a work performed at some event. + * + * @return {@link Person} or {@link Organization} + * @see https://schema.org/docs/collab/MBZ + */ + List getComposerList(); + + /** + * The person or organization who wrote a composition, or who is the composer of a work performed at some event. + * + * @return {@link Person} or {@link Organization} + * @see https://schema.org/docs/collab/MBZ + */ + T getComposer(); + + /** + * The person or organization who wrote a composition, or who is the composer of a work performed at some event. + * + * @param composer Person value to set. + * @see https://schema.org/docs/collab/MBZ + */ + void addComposer(Person composer); + /** + * The person or organization who wrote a composition, or who is the composer of a work performed at some event. + * + * @param composer Organization value to set. + * @see https://schema.org/docs/collab/MBZ + */ + void addComposer(Organization composer); + + /** + * A secondary contributor to the CreativeWork or Event. + * + * @return {@link Person} or {@link Organization} + */ + List getContributorList(); + + /** + * A secondary contributor to the CreativeWork or Event. + * + * @return {@link Person} or {@link Organization} + */ + T getContributor(); + + /** + * A secondary contributor to the CreativeWork or Event. + * + * @param contributor Person value to set. + */ + void addContributor(Person contributor); + /** + * A secondary contributor to the CreativeWork or Event. + * + * @param contributor Organization value to set. + */ + void addContributor(Organization contributor); + + /** + * A director of e.g. TV, radio, movie, video gaming etc. content, or of an event. Directors can be associated with individual items or with a series, episode, clip. + * + * @return {@link Person} + */ + List getDirectorList(); + + /** + * A director of e.g. TV, radio, movie, video gaming etc. content, or of an event. Directors can be associated with individual items or with a series, episode, clip. + * + * @return {@link Person} + */ + Person getDirector(); + + /** + * A director of e.g. TV, radio, movie, video gaming etc. content, or of an event. Directors can be associated with individual items or with a series, episode, clip. + * + * @param director Person value to set. + */ + void addDirector(Person director); + + /** + * The time admission will commence. + * + * @return {@link Time} or {@link DateTime} + */ + List getDoorTimeList(); + + /** + * The time admission will commence. + * + * @return {@link Time} or {@link DateTime} + */ + T getDoorTime(); + + /** + * The time admission will commence. + * + * @param doorTime Time value to set. + */ + void addDoorTime(Time doorTime); + /** + * The time admission will commence. + * + * @param doorTime DateTime value to set. + */ + void addDoorTime(DateTime doorTime); + + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getDurationList(); + + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getDuration(); + + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param duration Duration value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addDuration(Duration duration); + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param duration QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addDuration(QuantitativeValue duration); + + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + List getEndDateList(); + + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + T getEndDate(); + + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param endDate DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addEndDate(DateTime endDate); + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param endDate Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addEndDate(Date endDate); + + /** + * The eventAttendanceMode of an event indicates whether it occurs online, offline, or a mix. + * + * @return {@link EventAttendanceModeEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + List getEventAttendanceModeList(); + + /** + * The eventAttendanceMode of an event indicates whether it occurs online, offline, or a mix. + * + * @return {@link EventAttendanceModeEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + EventAttendanceModeEnumeration getEventAttendanceMode(); + + /** + * The eventAttendanceMode of an event indicates whether it occurs online, offline, or a mix. + * + * @param eventAttendanceMode EventAttendanceModeEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + void addEventAttendanceMode(EventAttendanceModeEnumeration eventAttendanceMode); + + /** + * Associates an [[Event]] with a [[Schedule]]. There are circumstances where it is preferable to share a schedule for a series of + * repeating events rather than data on the individual events themselves. For example, a website or application might prefer to publish a schedule for a weekly + * gym class rather than provide data on every event. A schedule could be processed by applications to add forthcoming events to a calendar. An [[Event]] that + * is associated with a [[Schedule]] using this property should not have [[startDate]] or [[endDate]] properties. These are instead defined within the associated + * [[Schedule]], this avoids any ambiguity for clients using the data. The property might have repeated values to specify different schedules, e.g. for different months + * or seasons. + * + * @return {@link Schedule} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1457 + */ + List getEventScheduleList(); + + /** + * Associates an [[Event]] with a [[Schedule]]. There are circumstances where it is preferable to share a schedule for a series of + * repeating events rather than data on the individual events themselves. For example, a website or application might prefer to publish a schedule for a weekly + * gym class rather than provide data on every event. A schedule could be processed by applications to add forthcoming events to a calendar. An [[Event]] that + * is associated with a [[Schedule]] using this property should not have [[startDate]] or [[endDate]] properties. These are instead defined within the associated + * [[Schedule]], this avoids any ambiguity for clients using the data. The property might have repeated values to specify different schedules, e.g. for different months + * or seasons. + * + * @return {@link Schedule} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1457 + */ + Schedule getEventSchedule(); + + /** + * Associates an [[Event]] with a [[Schedule]]. There are circumstances where it is preferable to share a schedule for a series of + * repeating events rather than data on the individual events themselves. For example, a website or application might prefer to publish a schedule for a weekly + * gym class rather than provide data on every event. A schedule could be processed by applications to add forthcoming events to a calendar. An [[Event]] that + * is associated with a [[Schedule]] using this property should not have [[startDate]] or [[endDate]] properties. These are instead defined within the associated + * [[Schedule]], this avoids any ambiguity for clients using the data. The property might have repeated values to specify different schedules, e.g. for different months + * or seasons. + * + * @param eventSchedule Schedule value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1457 + */ + void addEventSchedule(Schedule eventSchedule); + + /** + * An eventStatus of an event represents its status; particularly useful when an event is cancelled or rescheduled. + * + * @return {@link EventStatusType} + */ + List getEventStatusList(); + + /** + * An eventStatus of an event represents its status; particularly useful when an event is cancelled or rescheduled. + * + * @return {@link EventStatusType} + */ + EventStatusType getEventStatus(); + + /** + * An eventStatus of an event represents its status; particularly useful when an event is cancelled or rescheduled. + * + * @param eventStatus EventStatusType value to set. + */ + void addEventStatus(EventStatusType eventStatus); + + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @return {@link Organization} or {@link Person} + */ + List getFunderList(); + + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @return {@link Organization} or {@link Person} + */ + T getFunder(); + + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @param funder Organization value to set. + */ + void addFunder(Organization funder); + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @param funder Person value to set. + */ + void addFunder(Person funder); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @return {@link Grant} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + List getFundingList(); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @return {@link Grant} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + Grant getFunding(); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @param funding Grant value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFunding(Grant funding); + + /** + * An offer to participate in the event, for example, Call for Proposals, Call for Speakers, or Call for Performers. + * + * @return {@link Offer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4495 + */ + List getHasParticipationOfferList(); + + /** + * An offer to participate in the event, for example, Call for Proposals, Call for Speakers, or Call for Performers. + * + * @return {@link Offer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4495 + */ + Offer getHasParticipationOffer(); + + /** + * An offer to participate in the event, for example, Call for Proposals, Call for Speakers, or Call for Performers. + * + * @param hasParticipationOffer Offer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4495 + */ + void addHasParticipationOffer(Offer hasParticipationOffer); + + /** + * An offer to sponsor the event, for example, Sponsorship Prospectus, Sponsorship Opportunities, or Sponsor Packages. + * + * @return {@link Offer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4495 + */ + List getHasSponsorshipOfferList(); + + /** + * An offer to sponsor the event, for example, Sponsorship Prospectus, Sponsorship Opportunities, or Sponsor Packages. + * + * @return {@link Offer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4495 + */ + Offer getHasSponsorshipOffer(); + + /** + * An offer to sponsor the event, for example, Sponsorship Prospectus, Sponsorship Opportunities, or Sponsor Packages. + * + * @param hasSponsorshipOffer Offer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4495 + */ + void addHasSponsorshipOffer(Offer hasSponsorshipOffer); + + /** + * The language of the content or performance or used in an action. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[availableLanguage]]. + * + * @return {@link Language} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2382 + */ + List getInLanguageList(); + + /** + * The language of the content or performance or used in an action. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[availableLanguage]]. + * + * @return {@link Language} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2382 + */ + T getInLanguage(); + + /** + * The language of the content or performance or used in an action. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[availableLanguage]]. + * + * @param inLanguage Language value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2382 + */ + void addInLanguage(Language inLanguage); + /** + * The language of the content or performance or used in an action. Please use one of the language codes from the [IETF BCP 47 standard](http://tools.ietf.org/html/bcp47). See also [[availableLanguage]]. + * + * @param inLanguage Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2382 + */ + void addInLanguage(Text inLanguage); + + /** + * A flag to signal that the item, event, or place is accessible for free. + * + * @return {@link Boolean} + */ + List getIsAccessibleForFreeList(); + + /** + * A flag to signal that the item, event, or place is accessible for free. + * + * @return {@link Boolean} + */ + Boolean getIsAccessibleForFree(); + + /** + * A flag to signal that the item, event, or place is accessible for free. + * + * @param isAccessibleForFree Boolean value to set. + */ + void addIsAccessibleForFree(Boolean isAccessibleForFree); + + /** + * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. + * + * @return {@link Text} or {@link DefinedTerm} or {@link URL} + */ + List getKeywordsList(); + + /** + * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. + * + * @return {@link Text} or {@link DefinedTerm} or {@link URL} + */ + T getKeywords(); + + /** + * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. + * + * @param keywords Text value to set. + */ + void addKeywords(Text keywords); + /** + * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. + * + * @param keywords DefinedTerm value to set. + */ + void addKeywords(DefinedTerm keywords); + /** + * Keywords or tags used to describe some item. Multiple textual entries in a keywords list are typically delimited by commas, or by repeating the property. + * + * @param keywords URL value to set. + */ + void addKeywords(URL keywords); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @return {@link Text} or {@link VirtualLocation} or {@link Place} or {@link PostalAddress} + */ + List getLocationList(); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @return {@link Text} or {@link VirtualLocation} or {@link Place} or {@link PostalAddress} + */ + T getLocation(); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location Text value to set. + */ + void addLocation(Text location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location VirtualLocation value to set. + */ + void addLocation(VirtualLocation location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location Place value to set. + */ + void addLocation(Place location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location PostalAddress value to set. + */ + void addLocation(PostalAddress location); + + /** + * The total number of individuals that may attend an event or venue. + * + * @return {@link Integer} + */ + List getMaximumAttendeeCapacityList(); + + /** + * The total number of individuals that may attend an event or venue. + * + * @return {@link Integer} + */ + Integer getMaximumAttendeeCapacity(); + + /** + * The total number of individuals that may attend an event or venue. + * + * @param maximumAttendeeCapacity Integer value to set. + */ + void addMaximumAttendeeCapacity(Integer maximumAttendeeCapacity); + + /** + * The maximum physical attendee capacity of an [[Event]] whose [[eventAttendanceMode]] is [[OfflineEventAttendanceMode]] (or the offline aspects, in the case of a [[MixedEventAttendanceMode]]). + * + * @return {@link Integer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + List getMaximumPhysicalAttendeeCapacityList(); + + /** + * The maximum physical attendee capacity of an [[Event]] whose [[eventAttendanceMode]] is [[OfflineEventAttendanceMode]] (or the offline aspects, in the case of a [[MixedEventAttendanceMode]]). + * + * @return {@link Integer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + Integer getMaximumPhysicalAttendeeCapacity(); + + /** + * The maximum physical attendee capacity of an [[Event]] whose [[eventAttendanceMode]] is [[OfflineEventAttendanceMode]] (or the offline aspects, in the case of a [[MixedEventAttendanceMode]]). + * + * @param maximumPhysicalAttendeeCapacity Integer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + void addMaximumPhysicalAttendeeCapacity(Integer maximumPhysicalAttendeeCapacity); + + /** + * The maximum virtual attendee capacity of an [[Event]] whose [[eventAttendanceMode]] is [[OnlineEventAttendanceMode]] (or the online aspects, in the case of a [[MixedEventAttendanceMode]]). + * + * @return {@link Integer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + List getMaximumVirtualAttendeeCapacityList(); + + /** + * The maximum virtual attendee capacity of an [[Event]] whose [[eventAttendanceMode]] is [[OnlineEventAttendanceMode]] (or the online aspects, in the case of a [[MixedEventAttendanceMode]]). + * + * @return {@link Integer} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + Integer getMaximumVirtualAttendeeCapacity(); + + /** + * The maximum virtual attendee capacity of an [[Event]] whose [[eventAttendanceMode]] is [[OnlineEventAttendanceMode]] (or the online aspects, in the case of a [[MixedEventAttendanceMode]]). + * + * @param maximumVirtualAttendeeCapacity Integer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + */ + void addMaximumVirtualAttendeeCapacity(Integer maximumVirtualAttendeeCapacity); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @return {@link Offer} or {@link Demand} + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + List getOffersList(); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @return {@link Offer} or {@link Demand} + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + T getOffers(); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @param offers Offer value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addOffers(Offer offers); + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @param offers Demand value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addOffers(Demand offers); + + /** + * An organizer of an Event. + * + * @return {@link Person} or {@link Organization} + */ + List getOrganizerList(); + + /** + * An organizer of an Event. + * + * @return {@link Person} or {@link Organization} + */ + T getOrganizer(); + + /** + * An organizer of an Event. + * + * @param organizer Person value to set. + */ + void addOrganizer(Person organizer); + /** + * An organizer of an Event. + * + * @param organizer Organization value to set. + */ + void addOrganizer(Organization organizer); + + /** + * A performer at the event—for example, a presenter, musician, musical group or actor. + * + * @return {@link Person} or {@link Organization} + */ + List getPerformerList(); + + /** + * A performer at the event—for example, a presenter, musician, musical group or actor. + * + * @return {@link Person} or {@link Organization} + */ + T getPerformer(); + + /** + * A performer at the event—for example, a presenter, musician, musical group or actor. + * + * @param performer Person value to set. + */ + void addPerformer(Person performer); + /** + * A performer at the event—for example, a presenter, musician, musical group or actor. + * + * @param performer Organization value to set. + */ + void addPerformer(Organization performer); + + /** + * The main performer or performers of the event—for example, a presenter, musician, or actor. + * + * @return {@link Person} or {@link Organization} + */ + List getPerformersList(); + + /** + * The main performer or performers of the event—for example, a presenter, musician, or actor. + * + * @return {@link Person} or {@link Organization} + */ + T getPerformers(); + + /** + * The main performer or performers of the event—for example, a presenter, musician, or actor. + * + * @param performers Person value to set. + */ + void addPerformers(Person performers); + /** + * The main performer or performers of the event—for example, a presenter, musician, or actor. + * + * @param performers Organization value to set. + */ + void addPerformers(Organization performers); + + /** + * Used in conjunction with eventStatus for rescheduled or cancelled events. This property contains the previously scheduled start date. For rescheduled events, the startDate property should be used for the newly scheduled start date. In the (rare) case of an event that has been postponed and rescheduled multiple times, this field may be repeated. + * + * @return {@link Date} + */ + List getPreviousStartDateList(); + + /** + * Used in conjunction with eventStatus for rescheduled or cancelled events. This property contains the previously scheduled start date. For rescheduled events, the startDate property should be used for the newly scheduled start date. In the (rare) case of an event that has been postponed and rescheduled multiple times, this field may be repeated. + * + * @return {@link Date} + */ + Date getPreviousStartDate(); + + /** + * Used in conjunction with eventStatus for rescheduled or cancelled events. This property contains the previously scheduled start date. For rescheduled events, the startDate property should be used for the newly scheduled start date. In the (rare) case of an event that has been postponed and rescheduled multiple times, this field may be repeated. + * + * @param previousStartDate Date value to set. + */ + void addPreviousStartDate(Date previousStartDate); + + /** + * The CreativeWork that captured all or part of this Event. + * + * @return {@link CreativeWork} + */ + List getRecordedInList(); + + /** + * The CreativeWork that captured all or part of this Event. + * + * @return {@link CreativeWork} + */ + CreativeWork getRecordedIn(); + + /** + * The CreativeWork that captured all or part of this Event. + * + * @param recordedIn CreativeWork value to set. + */ + void addRecordedIn(CreativeWork recordedIn); + + /** + * The number of attendee places for an event that remain unallocated. + * + * @return {@link Integer} + */ + List getRemainingAttendeeCapacityList(); + + /** + * The number of attendee places for an event that remain unallocated. + * + * @return {@link Integer} + */ + Integer getRemainingAttendeeCapacity(); + + /** + * The number of attendee places for an event that remain unallocated. + * + * @param remainingAttendeeCapacity Integer value to set. + */ + void addRemainingAttendeeCapacity(Integer remainingAttendeeCapacity); + + /** + * A review of the item. + * + * @return {@link Review} + */ + List getReviewList(); + + /** + * A review of the item. + * + * @return {@link Review} + */ + Review getReview(); + + /** + * A review of the item. + * + * @param review Review value to set. + */ + void addReview(Review review); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @return {@link Person} or {@link Organization} + */ + List getSponsorList(); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @return {@link Person} or {@link Organization} + */ + T getSponsor(); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @param sponsor Person value to set. + */ + void addSponsor(Person sponsor); + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @param sponsor Organization value to set. + */ + void addSponsor(Organization sponsor); + + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + List getStartDateList(); + + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + T getStartDate(); + + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param startDate DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addStartDate(DateTime startDate); + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param startDate Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addStartDate(Date startDate); + + /** + * An Event that is part of this event. For example, a conference event includes many presentations, each of which is a subEvent of the conference. + * + * @return {@link Event} + */ + List getSubEventList(); + + /** + * An Event that is part of this event. For example, a conference event includes many presentations, each of which is a subEvent of the conference. + * + * @return {@link Event} + */ + Event getSubEvent(); + + /** + * An Event that is part of this event. For example, a conference event includes many presentations, each of which is a subEvent of the conference. + * + * @param subEvent Event value to set. + */ + void addSubEvent(Event subEvent); + + /** + * Events that are a part of this event. For example, a conference event includes many presentations, each subEvents of the conference. + * + * @return {@link Event} + */ + List getSubEventsList(); + + /** + * Events that are a part of this event. For example, a conference event includes many presentations, each subEvents of the conference. + * + * @return {@link Event} + */ + Event getSubEvents(); + + /** + * Events that are a part of this event. For example, a conference event includes many presentations, each subEvents of the conference. + * + * @param subEvents Event value to set. + */ + void addSubEvents(Event subEvents); + + /** + * An event that this event is a part of. For example, a collection of individual music performances might each have a music festival as their superEvent. + * + * @return {@link Event} + */ + List getSuperEventList(); + + /** + * An event that this event is a part of. For example, a collection of individual music performances might each have a music festival as their superEvent. + * + * @return {@link Event} + */ + Event getSuperEvent(); + + /** + * An event that this event is a part of. For example, a collection of individual music performances might each have a music festival as their superEvent. + * + * @param superEvent Event value to set. + */ + void addSuperEvent(Event superEvent); + + /** + * Organization or person who adapts a creative work to different languages, regional differences and technical requirements of a target market, or that translates during some event. + * + * @return {@link Organization} or {@link Person} + */ + List getTranslatorList(); + + /** + * Organization or person who adapts a creative work to different languages, regional differences and technical requirements of a target market, or that translates during some event. + * + * @return {@link Organization} or {@link Person} + */ + T getTranslator(); + + /** + * Organization or person who adapts a creative work to different languages, regional differences and technical requirements of a target market, or that translates during some event. + * + * @param translator Organization value to set. + */ + void addTranslator(Organization translator); + /** + * Organization or person who adapts a creative work to different languages, regional differences and technical requirements of a target market, or that translates during some event. + * + * @param translator Person value to set. + */ + void addTranslator(Person translator); + + /** + * The typical expected age range, e.g. '7-9', '11-'. + * + * @return {@link Text} + */ + List getTypicalAgeRangeList(); + + /** + * The typical expected age range, e.g. '7-9', '11-'. + * + * @return {@link Text} + */ + Text getTypicalAgeRange(); + + /** + * The typical expected age range, e.g. '7-9', '11-'. + * + * @param typicalAgeRange Text value to set. + */ + void addTypicalAgeRange(Text typicalAgeRange); + + /** + * A work featured in some event, e.g. exhibited in an ExhibitionEvent. + * Specific subproperties are available for workPerformed (e.g. a play), or a workPresented (a Movie at a ScreeningEvent). + * + * @return {@link CreativeWork} + */ + List getWorkFeaturedList(); + + /** + * A work featured in some event, e.g. exhibited in an ExhibitionEvent. + * Specific subproperties are available for workPerformed (e.g. a play), or a workPresented (a Movie at a ScreeningEvent). + * + * @return {@link CreativeWork} + */ + CreativeWork getWorkFeatured(); + + /** + * A work featured in some event, e.g. exhibited in an ExhibitionEvent. + * Specific subproperties are available for workPerformed (e.g. a play), or a workPresented (a Movie at a ScreeningEvent). + * + * @param workFeatured CreativeWork value to set. + */ + void addWorkFeatured(CreativeWork workFeatured); + + /** + * A work performed in some event, for example a play performed in a TheaterEvent. + * + * @return {@link CreativeWork} + */ + List getWorkPerformedList(); + + /** + * A work performed in some event, for example a play performed in a TheaterEvent. + * + * @return {@link CreativeWork} + */ + CreativeWork getWorkPerformed(); + + /** + * A work performed in some event, for example a play performed in a TheaterEvent. + * + * @param workPerformed CreativeWork value to set. + */ + void addWorkPerformed(CreativeWork workPerformed); +} diff --git a/generator/src/test/resources/data/filters/model/EventAttendanceModeEnumeration.java b/generator/src/test/resources/data/filters/model/EventAttendanceModeEnumeration.java new file mode 100644 index 00000000..be22619e --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EventAttendanceModeEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * An EventAttendanceModeEnumeration value is one of potentially several modes of organising an event, relating to whether it is online or offline. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1842 + * @see https://schema.org/EventAttendanceModeEnumeration + */ +public interface EventAttendanceModeEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/EventStatusType.java b/generator/src/test/resources/data/filters/model/EventStatusType.java new file mode 100644 index 00000000..d655cbd8 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/EventStatusType.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * EventStatusType is an enumeration type whose instances represent several states that an Event may be in. + * + * @see https://schema.org/EventStatusType + */ +public interface EventStatusType extends StatusEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/FinancialProduct.java b/generator/src/test/resources/data/filters/model/FinancialProduct.java new file mode 100644 index 00000000..b005f65c --- /dev/null +++ b/generator/src/test/resources/data/filters/model/FinancialProduct.java @@ -0,0 +1,114 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.QuantitativeValue; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A product provided to consumers and businesses by financial institutions such as banks, insurance companies, brokerage firms, consumer finance companies, and investment companies which comprise the financial services industry. + * + * @see https://schema.org/docs/collab/FIBO + * @see https://schema.org/FinancialProduct + */ +public interface FinancialProduct extends Service { + + /** + * The annual rate that is charged for borrowing (or made by investing), expressed as a single percentage number that represents the actual yearly cost of funds over the term of a loan. This includes any fees or additional costs associated with the transaction. + * + * @return {@link QuantitativeValue} or {@link Number} + * @see https://schema.org/docs/collab/FIBO + */ + List getAnnualPercentageRateList(); + + /** + * The annual rate that is charged for borrowing (or made by investing), expressed as a single percentage number that represents the actual yearly cost of funds over the term of a loan. This includes any fees or additional costs associated with the transaction. + * + * @return {@link QuantitativeValue} or {@link Number} + * @see https://schema.org/docs/collab/FIBO + */ + T getAnnualPercentageRate(); + + /** + * The annual rate that is charged for borrowing (or made by investing), expressed as a single percentage number that represents the actual yearly cost of funds over the term of a loan. This includes any fees or additional costs associated with the transaction. + * + * @param annualPercentageRate QuantitativeValue value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addAnnualPercentageRate(QuantitativeValue annualPercentageRate); + /** + * The annual rate that is charged for borrowing (or made by investing), expressed as a single percentage number that represents the actual yearly cost of funds over the term of a loan. This includes any fees or additional costs associated with the transaction. + * + * @param annualPercentageRate Number value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addAnnualPercentageRate(Number annualPercentageRate); + + /** + * Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization. + * + * @return {@link URL} or {@link Text} + * @see https://schema.org/docs/collab/FIBO + */ + List getFeesAndCommissionsSpecificationList(); + + /** + * Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization. + * + * @return {@link URL} or {@link Text} + * @see https://schema.org/docs/collab/FIBO + */ + T getFeesAndCommissionsSpecification(); + + /** + * Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization. + * + * @param feesAndCommissionsSpecification URL value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addFeesAndCommissionsSpecification(URL feesAndCommissionsSpecification); + /** + * Description of fees, commissions, and other terms applied either to a class of financial product, or by a financial service organization. + * + * @param feesAndCommissionsSpecification Text value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addFeesAndCommissionsSpecification(Text feesAndCommissionsSpecification); + + /** + * The interest rate, charged or paid, applicable to the financial product. Note: This is different from the calculated annualPercentageRate. + * + * @return {@link QuantitativeValue} or {@link Number} + * @see https://schema.org/docs/collab/FIBO + */ + List getInterestRateList(); + + /** + * The interest rate, charged or paid, applicable to the financial product. Note: This is different from the calculated annualPercentageRate. + * + * @return {@link QuantitativeValue} or {@link Number} + * @see https://schema.org/docs/collab/FIBO + */ + T getInterestRate(); + + /** + * The interest rate, charged or paid, applicable to the financial product. Note: This is different from the calculated annualPercentageRate. + * + * @param interestRate QuantitativeValue value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addInterestRate(QuantitativeValue interestRate); + /** + * The interest rate, charged or paid, applicable to the financial product. Note: This is different from the calculated annualPercentageRate. + * + * @param interestRate Number value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addInterestRate(Number interestRate); +} diff --git a/generator/src/test/resources/data/filters/model/FulfillmentTypeEnumeration.java b/generator/src/test/resources/data/filters/model/FulfillmentTypeEnumeration.java new file mode 100644 index 00000000..ee0fa9ef --- /dev/null +++ b/generator/src/test/resources/data/filters/model/FulfillmentTypeEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A type of product fulfillment. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/FulfillmentTypeEnumeration + */ +public interface FulfillmentTypeEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/GameServerStatus.java b/generator/src/test/resources/data/filters/model/GameServerStatus.java new file mode 100644 index 00000000..ec863a86 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/GameServerStatus.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Status of a game server. + * + * @see https://schema.org/GameServerStatus + */ +public interface GameServerStatus extends StatusEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/GenderType.java b/generator/src/test/resources/data/filters/model/GenderType.java new file mode 100644 index 00000000..991bbd4c --- /dev/null +++ b/generator/src/test/resources/data/filters/model/GenderType.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * An enumeration of genders. + * + * @see https://schema.org/GenderType + */ +public interface GenderType extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Gene.java b/generator/src/test/resources/data/filters/model/Gene.java new file mode 100644 index 00000000..2b151dd2 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Gene.java @@ -0,0 +1,156 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AnatomicalStructure; +import filters.model.AnatomicalSystem; +import filters.model.BioChemEntity; +import filters.model.DefinedTerm; +import filters.model.Gene; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A discrete unit of inheritance which affects one or more biological traits (Source: [https://en.wikipedia.org/wiki/Gene](https://en.wikipedia.org/wiki/Gene)). Examples include FOXP2 (Forkhead box protein P2), SCARNA21 (small Cajal body-specific RNA 21), A- (agouti genotype). + * + * @see https://pending.schema.org + * @see http://bioschemas.org + * @see https://schema.org/Gene + */ +public interface Gene extends BioChemEntity { + + /** + * Another gene which is a variation of this one. + * + * @return {@link Gene} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + List getAlternativeOfList(); + + /** + * Another gene which is a variation of this one. + * + * @return {@link Gene} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + Gene getAlternativeOf(); + + /** + * Another gene which is a variation of this one. + * + * @param alternativeOf Gene value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addAlternativeOf(Gene alternativeOf); + + /** + * Another BioChemEntity encoded by this one. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + List getEncodesBioChemEntityList(); + + /** + * Another BioChemEntity encoded by this one. + * + * @return {@link BioChemEntity} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + BioChemEntity getEncodesBioChemEntity(); + + /** + * Another BioChemEntity encoded by this one. + * + * @param encodesBioChemEntity BioChemEntity value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addEncodesBioChemEntity(BioChemEntity encodesBioChemEntity); + + /** + * Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system. + * + * @return {@link DefinedTerm} or {@link AnatomicalSystem} or {@link BioChemEntity} or {@link AnatomicalStructure} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + List getExpressedInList(); + + /** + * Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system. + * + * @return {@link DefinedTerm} or {@link AnatomicalSystem} or {@link BioChemEntity} or {@link AnatomicalStructure} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + T getExpressedIn(); + + /** + * Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system. + * + * @param expressedIn DefinedTerm value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addExpressedIn(DefinedTerm expressedIn); + /** + * Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system. + * + * @param expressedIn AnatomicalSystem value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addExpressedIn(AnatomicalSystem expressedIn); + /** + * Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system. + * + * @param expressedIn BioChemEntity value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addExpressedIn(BioChemEntity expressedIn); + /** + * Tissue, organ, biological sample, etc in which activity of this gene has been observed experimentally. For example brain, digestive system. + * + * @param expressedIn AnatomicalStructure value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addExpressedIn(AnatomicalStructure expressedIn); + + /** + * A symbolic representation of a BioChemEntity. For example, a nucleotide sequence of a Gene or an amino acid sequence of a Protein. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + List getHasBioPolymerSequenceList(); + + /** + * A symbolic representation of a BioChemEntity. For example, a nucleotide sequence of a Gene or an amino acid sequence of a Protein. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + Text getHasBioPolymerSequence(); + + /** + * A symbolic representation of a BioChemEntity. For example, a nucleotide sequence of a Gene or an amino acid sequence of a Protein. + * + * @param hasBioPolymerSequence Text value to set. + * @see https://pending.schema.org + * @see http://www.bioschemas.org/Gene + */ + void addHasBioPolymerSequence(Text hasBioPolymerSequence); +} diff --git a/generator/src/test/resources/data/filters/model/GeoCoordinates.java b/generator/src/test/resources/data/filters/model/GeoCoordinates.java new file mode 100644 index 00000000..916d493a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/GeoCoordinates.java @@ -0,0 +1,183 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Country; +import filters.model.PostalAddress; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * The geographic coordinates of a place or event. + * + * @see https://schema.org/GeoCoordinates + */ +public interface GeoCoordinates extends StructuredValue { + + /** + * Physical address of the item. + * + * @return {@link PostalAddress} or {@link Text} + */ + List getAddressList(); + + /** + * Physical address of the item. + * + * @return {@link PostalAddress} or {@link Text} + */ + T getAddress(); + + /** + * Physical address of the item. + * + * @param address PostalAddress value to set. + */ + void addAddress(PostalAddress address); + /** + * Physical address of the item. + * + * @param address Text value to set. + */ + void addAddress(Text address); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @return {@link Country} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getAddressCountryList(); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @return {@link Country} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + T getAddressCountry(); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @param addressCountry Country value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressCountry(Country addressCountry); + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @param addressCountry Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressCountry(Text addressCountry); + + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @return {@link Number} or {@link Text} + */ + List getElevationList(); + + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @return {@link Number} or {@link Text} + */ + T getElevation(); + + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @param elevation Number value to set. + */ + void addElevation(Number elevation); + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @param elevation Text value to set. + */ + void addElevation(Text elevation); + + /** + * The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @return {@link Number} or {@link Text} + */ + List getLatitudeList(); + + /** + * The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @return {@link Number} or {@link Text} + */ + T getLatitude(); + + /** + * The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @param latitude Number value to set. + */ + void addLatitude(Number latitude); + /** + * The latitude of a location. For example ```37.42242``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @param latitude Text value to set. + */ + void addLatitude(Text latitude); + + /** + * The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @return {@link Number} or {@link Text} + */ + List getLongitudeList(); + + /** + * The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @return {@link Number} or {@link Text} + */ + T getLongitude(); + + /** + * The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @param longitude Number value to set. + */ + void addLongitude(Number longitude); + /** + * The longitude of a location. For example ```-122.08585``` ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). + * + * @param longitude Text value to set. + */ + void addLongitude(Text longitude); + + /** + * The postal code. For example, 94043. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getPostalCodeList(); + + /** + * The postal code. For example, 94043. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + Text getPostalCode(); + + /** + * The postal code. For example, 94043. + * + * @param postalCode Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addPostalCode(Text postalCode); +} diff --git a/generator/src/test/resources/data/filters/model/GeoShape.java b/generator/src/test/resources/data/filters/model/GeoShape.java new file mode 100644 index 00000000..f1cd0c76 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/GeoShape.java @@ -0,0 +1,214 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Country; +import filters.model.PostalAddress; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * The geographic shape of a place. A GeoShape can be described using several properties whose values are based on latitude/longitude pairs. Either whitespace or commas can be used to separate latitude and longitude; whitespace should be used when writing a list of several such points. + * + * @see https://schema.org/docs/collab/rNews + * @see https://schema.org/GeoShape + */ +public interface GeoShape extends StructuredValue { + + /** + * Physical address of the item. + * + * @return {@link PostalAddress} or {@link Text} + */ + List getAddressList(); + + /** + * Physical address of the item. + * + * @return {@link PostalAddress} or {@link Text} + */ + T getAddress(); + + /** + * Physical address of the item. + * + * @param address PostalAddress value to set. + */ + void addAddress(PostalAddress address); + /** + * Physical address of the item. + * + * @param address Text value to set. + */ + void addAddress(Text address); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @return {@link Country} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getAddressCountryList(); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @return {@link Country} or {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + T getAddressCountry(); + + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @param addressCountry Country value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressCountry(Country addressCountry); + /** + * The country. Recommended to be in 2-letter [ISO 3166-1 alpha-2](http://en.wikipedia.org/wiki/ISO_3166-1) format, for example "US". For backward compatibility, a 3-letter [ISO 3166-1 alpha-3](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-3) country code such as "SGP" or a full country name such as "Singapore" can also be used. + * + * @param addressCountry Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addAddressCountry(Text addressCountry); + + /** + * A box is the area enclosed by the rectangle formed by two points. The first point is the lower corner, the second point is the upper corner. A box is expressed as two points separated by a space character. + * + * @return {@link Text} + */ + List getBoxList(); + + /** + * A box is the area enclosed by the rectangle formed by two points. The first point is the lower corner, the second point is the upper corner. A box is expressed as two points separated by a space character. + * + * @return {@link Text} + */ + Text getBox(); + + /** + * A box is the area enclosed by the rectangle formed by two points. The first point is the lower corner, the second point is the upper corner. A box is expressed as two points separated by a space character. + * + * @param box Text value to set. + */ + void addBox(Text box); + + /** + * A circle is the circular region of a specified radius centered at a specified latitude and longitude. A circle is expressed as a pair followed by a radius in meters. + * + * @return {@link Text} + */ + List getCircleList(); + + /** + * A circle is the circular region of a specified radius centered at a specified latitude and longitude. A circle is expressed as a pair followed by a radius in meters. + * + * @return {@link Text} + */ + Text getCircle(); + + /** + * A circle is the circular region of a specified radius centered at a specified latitude and longitude. A circle is expressed as a pair followed by a radius in meters. + * + * @param circle Text value to set. + */ + void addCircle(Text circle); + + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @return {@link Number} or {@link Text} + */ + List getElevationList(); + + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @return {@link Number} or {@link Text} + */ + T getElevation(); + + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @param elevation Number value to set. + */ + void addElevation(Number elevation); + /** + * The elevation of a location ([WGS 84](https://en.wikipedia.org/wiki/World_Geodetic_System)). Values may be of the form 'NUMBER UNIT\_OF\_MEASUREMENT' (e.g., '1,000 m', '3,200 ft') while numbers alone should be assumed to be a value in meters. + * + * @param elevation Text value to set. + */ + void addElevation(Text elevation); + + /** + * A line is a point-to-point path consisting of two or more points. A line is expressed as a series of two or more point objects separated by space. + * + * @return {@link Text} + */ + List getLineList(); + + /** + * A line is a point-to-point path consisting of two or more points. A line is expressed as a series of two or more point objects separated by space. + * + * @return {@link Text} + */ + Text getLine(); + + /** + * A line is a point-to-point path consisting of two or more points. A line is expressed as a series of two or more point objects separated by space. + * + * @param line Text value to set. + */ + void addLine(Text line); + + /** + * A polygon is the area enclosed by a point-to-point path for which the starting and ending points are the same. A polygon is expressed as a series of four or more space delimited points where the first and final points are identical. + * + * @return {@link Text} + */ + List getPolygonList(); + + /** + * A polygon is the area enclosed by a point-to-point path for which the starting and ending points are the same. A polygon is expressed as a series of four or more space delimited points where the first and final points are identical. + * + * @return {@link Text} + */ + Text getPolygon(); + + /** + * A polygon is the area enclosed by a point-to-point path for which the starting and ending points are the same. A polygon is expressed as a series of four or more space delimited points where the first and final points are identical. + * + * @param polygon Text value to set. + */ + void addPolygon(Text polygon); + + /** + * The postal code. For example, 94043. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getPostalCodeList(); + + /** + * The postal code. For example, 94043. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + Text getPostalCode(); + + /** + * The postal code. For example, 94043. + * + * @param postalCode Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addPostalCode(Text postalCode); +} diff --git a/generator/src/test/resources/data/filters/model/GeospatialGeometry.java b/generator/src/test/resources/data/filters/model/GeospatialGeometry.java new file mode 100644 index 00000000..8047870d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/GeospatialGeometry.java @@ -0,0 +1,290 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.GeospatialGeometry; +import filters.model.Place; +import java.util.List; + +/** + * (Eventually to be defined as) a supertype of GeoShape designed to accommodate definitions from Geo-Spatial best practices. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1375 + * @see https://schema.org/GeospatialGeometry + */ +public interface GeospatialGeometry extends Intangible { + + /** + * Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + List getGeoContainsList(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + T getGeoContains(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoContains Place value to set. + */ + void addGeoContains(Place geoContains); + /** + * Represents a relationship between two geometries (or the places they represent), relating a containing geometry to a contained geometry. "a contains b iff no points of b lie in the exterior of a, and at least one point of the interior of b lies in the interior of a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoContains GeospatialGeometry value to set. + */ + void addGeoContains(GeospatialGeometry geoContains); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + List getGeoCoveredByList(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + T getGeoCoveredBy(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoCoveredBy GeospatialGeometry value to set. + */ + void addGeoCoveredBy(GeospatialGeometry geoCoveredBy); + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that covers it. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoCoveredBy Place value to set. + */ + void addGeoCoveredBy(Place geoCoveredBy); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + List getGeoCoversList(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + T getGeoCovers(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoCovers GeospatialGeometry value to set. + */ + void addGeoCovers(GeospatialGeometry geoCovers); + /** + * Represents a relationship between two geometries (or the places they represent), relating a covering geometry to a covered geometry. "Every point of b is a point of (the interior or boundary of) a". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoCovers Place value to set. + */ + void addGeoCovers(Place geoCovers); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + List getGeoCrossesList(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + T getGeoCrosses(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoCrosses Place value to set. + */ + void addGeoCrosses(Place geoCrosses); + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that crosses it: "a crosses b: they have some but not all interior points in common, and the dimension of the intersection is less than that of at least one of them". As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoCrosses GeospatialGeometry value to set. + */ + void addGeoCrosses(GeospatialGeometry geoCrosses); + + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + List getGeoDisjointList(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + T getGeoDisjoint(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @param geoDisjoint Place value to set. + */ + void addGeoDisjoint(Place geoDisjoint); + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically disjoint: "they have no point in common. They form a set of disconnected geometries." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @param geoDisjoint GeospatialGeometry value to set. + */ + void addGeoDisjoint(GeospatialGeometry geoDisjoint); + + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + List getGeoEqualsList(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + T getGeoEquals(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship). + * + * @param geoEquals GeospatialGeometry value to set. + */ + void addGeoEquals(GeospatialGeometry geoEquals); + /** + * Represents spatial relations in which two geometries (or the places they represent) are topologically equal, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). "Two geometries are topologically equal if their interiors intersect and no part of the interior or boundary of one geometry intersects the exterior of the other" (a symmetric relationship). + * + * @param geoEquals Place value to set. + */ + void addGeoEquals(Place geoEquals); + + /** + * Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + List getGeoIntersectsList(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + T getGeoIntersects(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoIntersects Place value to set. + */ + void addGeoIntersects(Place geoIntersects); + /** + * Represents spatial relations in which two geometries (or the places they represent) have at least one point in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoIntersects GeospatialGeometry value to set. + */ + void addGeoIntersects(GeospatialGeometry geoIntersects); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + List getGeoOverlapsList(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + T getGeoOverlaps(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoOverlaps GeospatialGeometry value to set. + */ + void addGeoOverlaps(GeospatialGeometry geoOverlaps); + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to another that geospatially overlaps it, i.e. they have some but not all points in common. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoOverlaps Place value to set. + */ + void addGeoOverlaps(Place geoOverlaps); + + /** + * Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + List getGeoTouchesList(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @return {@link Place} or {@link GeospatialGeometry} + */ + T getGeoTouches(); + + /** + * Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @param geoTouches Place value to set. + */ + void addGeoTouches(Place geoTouches); + /** + * Represents spatial relations in which two geometries (or the places they represent) touch: "they have at least one boundary point in common, but no interior points." (A symmetric relationship, as defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM).) + * + * @param geoTouches GeospatialGeometry value to set. + */ + void addGeoTouches(GeospatialGeometry geoTouches); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + List getGeoWithinList(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @return {@link GeospatialGeometry} or {@link Place} + */ + T getGeoWithin(); + + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoWithin GeospatialGeometry value to set. + */ + void addGeoWithin(GeospatialGeometry geoWithin); + /** + * Represents a relationship between two geometries (or the places they represent), relating a geometry to one that contains it, i.e. it is inside (i.e. within) its interior. As defined in [DE-9IM](https://en.wikipedia.org/wiki/DE-9IM). + * + * @param geoWithin Place value to set. + */ + void addGeoWithin(Place geoWithin); +} diff --git a/generator/src/test/resources/data/filters/model/GovernmentBenefitsType.java b/generator/src/test/resources/data/filters/model/GovernmentBenefitsType.java new file mode 100644 index 00000000..f2e3466f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/GovernmentBenefitsType.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * GovernmentBenefitsType enumerates several kinds of government benefits to support the COVID-19 situation. Note that this structure may not capture all benefits offered. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2534 + * @see https://schema.org/GovernmentBenefitsType + */ +public interface GovernmentBenefitsType extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Grant.java b/generator/src/test/resources/data/filters/model/Grant.java new file mode 100644 index 00000000..797a7d93 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Grant.java @@ -0,0 +1,179 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.BioChemEntity; +import filters.model.CreativeWork; +import filters.model.Event; +import filters.model.MedicalEntity; +import filters.model.Organization; +import filters.model.Person; +import filters.model.Product; +import java.util.List; + +/** + * A grant, typically financial or otherwise quantifiable, of resources. Typically a [[funder]] sponsors some [[MonetaryAmount]] to an [[Organization]] or [[Person]], + * sometimes not necessarily via a dedicated or long-lived [[Project]], resulting in one or more outputs, or [[fundedItem]]s. For financial sponsorship, indicate the [[funder]] of a [[MonetaryGrant]]. For non-financial support, indicate [[sponsor]] of [[Grant]]s of resources (e.g. office space). + * + * Grants support activities directed towards some agreed collective goals, often but not always organized as [[Project]]s. Long-lived projects are sometimes sponsored by a variety of grants over time, but it is also common for a project to be associated with a single grant. + * + * The amount of a [[Grant]] is represented using [[amount]] as a [[MonetaryAmount]]. + * + * + * @see https://pending.schema.org + * @see https://schema.org/docs/collab/FundInfoCollab + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/Grant + */ +public interface Grant extends Intangible { + + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @return {@link Product} or {@link Event} or {@link CreativeWork} or {@link MedicalEntity} or {@link BioChemEntity} or {@link Person} or {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + List getFundedItemList(); + + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @return {@link Product} or {@link Event} or {@link CreativeWork} or {@link MedicalEntity} or {@link BioChemEntity} or {@link Person} or {@link Organization} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + T getFundedItem(); + + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem Product value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(Product fundedItem); + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem Event value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(Event fundedItem); + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem CreativeWork value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(CreativeWork fundedItem); + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem MedicalEntity value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(MedicalEntity fundedItem); + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem BioChemEntity value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(BioChemEntity fundedItem); + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem Person value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(Person fundedItem); + /** + * Indicates something directly or indirectly funded or sponsored through a [[Grant]]. See also [[ownershipFundingInfo]]. + * + * @param fundedItem Organization value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1950 + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFundedItem(Organization fundedItem); + + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @return {@link Organization} or {@link Person} + */ + List getFunderList(); + + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @return {@link Organization} or {@link Person} + */ + T getFunder(); + + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @param funder Organization value to set. + */ + void addFunder(Organization funder); + /** + * A person or organization that supports (sponsors) something through some kind of financial contribution. + * + * @param funder Person value to set. + */ + void addFunder(Person funder); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @return {@link Person} or {@link Organization} + */ + List getSponsorList(); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @return {@link Person} or {@link Organization} + */ + T getSponsor(); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @param sponsor Person value to set. + */ + void addSponsor(Person sponsor); + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @param sponsor Organization value to set. + */ + void addSponsor(Organization sponsor); +} diff --git a/generator/src/test/resources/data/filters/model/HealthInsurancePlan.java b/generator/src/test/resources/data/filters/model/HealthInsurancePlan.java new file mode 100644 index 00000000..a7dcf7e1 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HealthInsurancePlan.java @@ -0,0 +1,268 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.ContactPoint; +import filters.model.HealthPlanFormulary; +import filters.model.HealthPlanNetwork; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A US-style health insurance plan, including PPOs, EPOs, and HMOs. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + * @see https://schema.org/HealthInsurancePlan + */ +public interface HealthInsurancePlan extends Intangible { + + /** + * The URL that goes directly to the summary of benefits and coverage for the specific standard plan or plan variation. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getBenefitsSummaryUrlList(); + + /** + * The URL that goes directly to the summary of benefits and coverage for the specific standard plan or plan variation. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + URL getBenefitsSummaryUrl(); + + /** + * The URL that goes directly to the summary of benefits and coverage for the specific standard plan or plan variation. + * + * @param benefitsSummaryUrl URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addBenefitsSummaryUrl(URL benefitsSummaryUrl); + + /** + * A contact point for a person or organization. + * + * @return {@link ContactPoint} + */ + List getContactPointList(); + + /** + * A contact point for a person or organization. + * + * @return {@link ContactPoint} + */ + ContactPoint getContactPoint(); + + /** + * A contact point for a person or organization. + * + * @param contactPoint ContactPoint value to set. + */ + void addContactPoint(ContactPoint contactPoint); + + /** + * TODO. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanDrugOptionList(); + + /** + * TODO. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanDrugOption(); + + /** + * TODO. + * + * @param healthPlanDrugOption Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanDrugOption(Text healthPlanDrugOption); + + /** + * The tier(s) of drugs offered by this formulary or insurance plan. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanDrugTierList(); + + /** + * The tier(s) of drugs offered by this formulary or insurance plan. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanDrugTier(); + + /** + * The tier(s) of drugs offered by this formulary or insurance plan. + * + * @param healthPlanDrugTier Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanDrugTier(Text healthPlanDrugTier); + + /** + * The 14-character, HIOS-generated Plan ID number. (Plan IDs must be unique, even across different markets.) + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanIdList(); + + /** + * The 14-character, HIOS-generated Plan ID number. (Plan IDs must be unique, even across different markets.) + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanId(); + + /** + * The 14-character, HIOS-generated Plan ID number. (Plan IDs must be unique, even across different markets.) + * + * @param healthPlanId Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanId(Text healthPlanId); + + /** + * The URL that goes directly to the plan brochure for the specific standard plan or plan variation. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanMarketingUrlList(); + + /** + * The URL that goes directly to the plan brochure for the specific standard plan or plan variation. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + URL getHealthPlanMarketingUrl(); + + /** + * The URL that goes directly to the plan brochure for the specific standard plan or plan variation. + * + * @param healthPlanMarketingUrl URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanMarketingUrl(URL healthPlanMarketingUrl); + + /** + * Formularies covered by this plan. + * + * @return {@link HealthPlanFormulary} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getIncludesHealthPlanFormularyList(); + + /** + * Formularies covered by this plan. + * + * @return {@link HealthPlanFormulary} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + HealthPlanFormulary getIncludesHealthPlanFormulary(); + + /** + * Formularies covered by this plan. + * + * @param includesHealthPlanFormulary HealthPlanFormulary value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addIncludesHealthPlanFormulary(HealthPlanFormulary includesHealthPlanFormulary); + + /** + * Networks covered by this plan. + * + * @return {@link HealthPlanNetwork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getIncludesHealthPlanNetworkList(); + + /** + * Networks covered by this plan. + * + * @return {@link HealthPlanNetwork} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + HealthPlanNetwork getIncludesHealthPlanNetwork(); + + /** + * Networks covered by this plan. + * + * @param includesHealthPlanNetwork HealthPlanNetwork value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addIncludesHealthPlanNetwork(HealthPlanNetwork includesHealthPlanNetwork); + + /** + * The standard for interpreting the Plan ID. The preferred is "HIOS". See the Centers for Medicare & Medicaid Services for more details. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getUsesHealthPlanIdStandardList(); + + /** + * The standard for interpreting the Plan ID. The preferred is "HIOS". See the Centers for Medicare & Medicaid Services for more details. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + T getUsesHealthPlanIdStandard(); + + /** + * The standard for interpreting the Plan ID. The preferred is "HIOS". See the Centers for Medicare & Medicaid Services for more details. + * + * @param usesHealthPlanIdStandard URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addUsesHealthPlanIdStandard(URL usesHealthPlanIdStandard); + /** + * The standard for interpreting the Plan ID. The preferred is "HIOS". See the Centers for Medicare & Medicaid Services for more details. + * + * @param usesHealthPlanIdStandard Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addUsesHealthPlanIdStandard(Text usesHealthPlanIdStandard); +} diff --git a/generator/src/test/resources/data/filters/model/HealthPlanCostSharingSpecification.java b/generator/src/test/resources/data/filters/model/HealthPlanCostSharingSpecification.java new file mode 100644 index 00000000..0674db7c --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HealthPlanCostSharingSpecification.java @@ -0,0 +1,156 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.PriceSpecification; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A description of costs to the patient under a given network or formulary. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + * @see https://schema.org/HealthPlanCostSharingSpecification + */ +public interface HealthPlanCostSharingSpecification extends Intangible { + + /** + * Whether the coinsurance applies before or after deductible, etc. TODO: Is this a closed set? + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanCoinsuranceOptionList(); + + /** + * Whether the coinsurance applies before or after deductible, etc. TODO: Is this a closed set? + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanCoinsuranceOption(); + + /** + * Whether the coinsurance applies before or after deductible, etc. TODO: Is this a closed set? + * + * @param healthPlanCoinsuranceOption Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCoinsuranceOption(Text healthPlanCoinsuranceOption); + + /** + * The rate of coinsurance expressed as a number between 0.0 and 1.0. + * + * @return {@link Number} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanCoinsuranceRateList(); + + /** + * The rate of coinsurance expressed as a number between 0.0 and 1.0. + * + * @return {@link Number} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Number getHealthPlanCoinsuranceRate(); + + /** + * The rate of coinsurance expressed as a number between 0.0 and 1.0. + * + * @param healthPlanCoinsuranceRate Number value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCoinsuranceRate(Number healthPlanCoinsuranceRate); + + /** + * The copay amount. + * + * @return {@link PriceSpecification} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanCopayList(); + + /** + * The copay amount. + * + * @return {@link PriceSpecification} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + PriceSpecification getHealthPlanCopay(); + + /** + * The copay amount. + * + * @param healthPlanCopay PriceSpecification value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCopay(PriceSpecification healthPlanCopay); + + /** + * Whether the copay is before or after deductible, etc. TODO: Is this a closed set? + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanCopayOptionList(); + + /** + * Whether the copay is before or after deductible, etc. TODO: Is this a closed set? + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanCopayOption(); + + /** + * Whether the copay is before or after deductible, etc. TODO: Is this a closed set? + * + * @param healthPlanCopayOption Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCopayOption(Text healthPlanCopayOption); + + /** + * The category or type of pharmacy associated with this cost sharing. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanPharmacyCategoryList(); + + /** + * The category or type of pharmacy associated with this cost sharing. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanPharmacyCategory(); + + /** + * The category or type of pharmacy associated with this cost sharing. + * + * @param healthPlanPharmacyCategory Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanPharmacyCategory(Text healthPlanPharmacyCategory); +} diff --git a/generator/src/test/resources/data/filters/model/HealthPlanFormulary.java b/generator/src/test/resources/data/filters/model/HealthPlanFormulary.java new file mode 100644 index 00000000..1af1c9d8 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HealthPlanFormulary.java @@ -0,0 +1,110 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.HealthPlanCostSharingSpecification; +import filters.model.datatype.Boolean; +import filters.model.datatype.Text; +import java.util.List; + +/** + * For a given health insurance plan, the specification for costs and coverage of prescription drugs. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + * @see https://schema.org/HealthPlanFormulary + */ +public interface HealthPlanFormulary extends Intangible { + + /** + * The costs to the patient for services under this network or formulary. + * + * @return {@link HealthPlanCostSharingSpecification} or {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanCostSharingList(); + + /** + * The costs to the patient for services under this network or formulary. + * + * @return {@link HealthPlanCostSharingSpecification} or {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + T getHealthPlanCostSharing(); + + /** + * The costs to the patient for services under this network or formulary. + * + * @param healthPlanCostSharing HealthPlanCostSharingSpecification value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCostSharing(HealthPlanCostSharingSpecification healthPlanCostSharing); + /** + * The costs to the patient for services under this network or formulary. + * + * @param healthPlanCostSharing Boolean value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCostSharing(Boolean healthPlanCostSharing); + + /** + * The tier(s) of drugs offered by this formulary or insurance plan. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanDrugTierList(); + + /** + * The tier(s) of drugs offered by this formulary or insurance plan. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanDrugTier(); + + /** + * The tier(s) of drugs offered by this formulary or insurance plan. + * + * @param healthPlanDrugTier Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanDrugTier(Text healthPlanDrugTier); + + /** + * Whether prescriptions can be delivered by mail. + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getOffersPrescriptionByMailList(); + + /** + * Whether prescriptions can be delivered by mail. + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Boolean getOffersPrescriptionByMail(); + + /** + * Whether prescriptions can be delivered by mail. + * + * @param offersPrescriptionByMail Boolean value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addOffersPrescriptionByMail(Boolean offersPrescriptionByMail); +} diff --git a/generator/src/test/resources/data/filters/model/HealthPlanNetwork.java b/generator/src/test/resources/data/filters/model/HealthPlanNetwork.java new file mode 100644 index 00000000..27730d9e --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HealthPlanNetwork.java @@ -0,0 +1,110 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.HealthPlanCostSharingSpecification; +import filters.model.datatype.Boolean; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A US-style health insurance plan network. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + * @see https://schema.org/HealthPlanNetwork + */ +public interface HealthPlanNetwork extends Intangible { + + /** + * The costs to the patient for services under this network or formulary. + * + * @return {@link HealthPlanCostSharingSpecification} or {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanCostSharingList(); + + /** + * The costs to the patient for services under this network or formulary. + * + * @return {@link HealthPlanCostSharingSpecification} or {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + T getHealthPlanCostSharing(); + + /** + * The costs to the patient for services under this network or formulary. + * + * @param healthPlanCostSharing HealthPlanCostSharingSpecification value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCostSharing(HealthPlanCostSharingSpecification healthPlanCostSharing); + /** + * The costs to the patient for services under this network or formulary. + * + * @param healthPlanCostSharing Boolean value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanCostSharing(Boolean healthPlanCostSharing); + + /** + * Name or unique ID of network. (Networks are often reused across different insurance plans.) + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanNetworkIdList(); + + /** + * Name or unique ID of network. (Networks are often reused across different insurance plans.) + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanNetworkId(); + + /** + * Name or unique ID of network. (Networks are often reused across different insurance plans.) + * + * @param healthPlanNetworkId Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanNetworkId(Text healthPlanNetworkId); + + /** + * The tier(s) for this network. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + List getHealthPlanNetworkTierList(); + + /** + * The tier(s) for this network. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + Text getHealthPlanNetworkTier(); + + /** + * The tier(s) for this network. + * + * @param healthPlanNetworkTier Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1062 + */ + void addHealthPlanNetworkTier(Text healthPlanNetworkTier); +} diff --git a/generator/src/test/resources/data/filters/model/HowTo.java b/generator/src/test/resources/data/filters/model/HowTo.java new file mode 100644 index 00000000..5e592cd1 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HowTo.java @@ -0,0 +1,269 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CreativeWork; +import filters.model.Duration; +import filters.model.HowToSection; +import filters.model.HowToStep; +import filters.model.HowToSupply; +import filters.model.HowToTool; +import filters.model.ItemList; +import filters.model.MonetaryAmount; +import filters.model.QuantitativeValue; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Instructions that explain how to achieve a result by performing a sequence of steps. + * + * @see https://schema.org/HowTo + */ +public interface HowTo extends CreativeWork { + + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @return {@link MonetaryAmount} or {@link Text} + */ + List getEstimatedCostList(); + + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @return {@link MonetaryAmount} or {@link Text} + */ + T getEstimatedCost(); + + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @param estimatedCost MonetaryAmount value to set. + */ + void addEstimatedCost(MonetaryAmount estimatedCost); + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @param estimatedCost Text value to set. + */ + void addEstimatedCost(Text estimatedCost); + + /** + * The length of time it takes to perform instructions or a direction (not including time to prepare the supplies), in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} + */ + List getPerformTimeList(); + + /** + * The length of time it takes to perform instructions or a direction (not including time to prepare the supplies), in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} + */ + Duration getPerformTime(); + + /** + * The length of time it takes to perform instructions or a direction (not including time to prepare the supplies), in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param performTime Duration value to set. + */ + void addPerformTime(Duration performTime); + + /** + * The length of time it takes to prepare the items to be used in instructions or a direction, in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} + */ + List getPrepTimeList(); + + /** + * The length of time it takes to prepare the items to be used in instructions or a direction, in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} + */ + Duration getPrepTime(); + + /** + * The length of time it takes to prepare the items to be used in instructions or a direction, in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param prepTime Duration value to set. + */ + void addPrepTime(Duration prepTime); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. + * + * @return {@link Text} or {@link HowToStep} or {@link HowToSection} or {@link CreativeWork} + */ + List getStepList(); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. + * + * @return {@link Text} or {@link HowToStep} or {@link HowToSection} or {@link CreativeWork} + */ + T getStep(); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. + * + * @param step Text value to set. + */ + void addStep(Text step); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. + * + * @param step HowToStep value to set. + */ + void addStep(HowToStep step); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. + * + * @param step HowToSection value to set. + */ + void addStep(HowToSection step); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. + * + * @param step CreativeWork value to set. + */ + void addStep(CreativeWork step); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @return {@link CreativeWork} or {@link ItemList} or {@link Text} + */ + List getStepsList(); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @return {@link CreativeWork} or {@link ItemList} or {@link Text} + */ + T getSteps(); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @param steps CreativeWork value to set. + */ + void addSteps(CreativeWork steps); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @param steps ItemList value to set. + */ + void addSteps(ItemList steps); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @param steps Text value to set. + */ + void addSteps(Text steps); + + /** + * A sub-property of instrument. A supply consumed when performing instructions or a direction. + * + * @return {@link Text} or {@link HowToSupply} + */ + List getSupplyList(); + + /** + * A sub-property of instrument. A supply consumed when performing instructions or a direction. + * + * @return {@link Text} or {@link HowToSupply} + */ + T getSupply(); + + /** + * A sub-property of instrument. A supply consumed when performing instructions or a direction. + * + * @param supply Text value to set. + */ + void addSupply(Text supply); + /** + * A sub-property of instrument. A supply consumed when performing instructions or a direction. + * + * @param supply HowToSupply value to set. + */ + void addSupply(HowToSupply supply); + + /** + * A sub property of instrument. An object used (but not consumed) when performing instructions or a direction. + * + * @return {@link HowToTool} or {@link Text} + */ + List getToolList(); + + /** + * A sub property of instrument. An object used (but not consumed) when performing instructions or a direction. + * + * @return {@link HowToTool} or {@link Text} + */ + T getTool(); + + /** + * A sub property of instrument. An object used (but not consumed) when performing instructions or a direction. + * + * @param tool HowToTool value to set. + */ + void addTool(HowToTool tool); + /** + * A sub property of instrument. An object used (but not consumed) when performing instructions or a direction. + * + * @param tool Text value to set. + */ + void addTool(Text tool); + + /** + * The total time required to perform instructions or a direction (including time to prepare the supplies), in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} + */ + List getTotalTimeList(); + + /** + * The total time required to perform instructions or a direction (including time to prepare the supplies), in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} + */ + Duration getTotalTime(); + + /** + * The total time required to perform instructions or a direction (including time to prepare the supplies), in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param totalTime Duration value to set. + */ + void addTotalTime(Duration totalTime); + + /** + * The quantity that results by performing instructions. For example, a paper airplane, 10 personalized candles. + * + * @return {@link QuantitativeValue} or {@link Text} + */ + List getYieldList(); + + /** + * The quantity that results by performing instructions. For example, a paper airplane, 10 personalized candles. + * + * @return {@link QuantitativeValue} or {@link Text} + */ + T getYield(); + + /** + * The quantity that results by performing instructions. For example, a paper airplane, 10 personalized candles. + * + * @param yield QuantitativeValue value to set. + */ + void addYield(QuantitativeValue yield); + /** + * The quantity that results by performing instructions. For example, a paper airplane, 10 personalized candles. + * + * @param yield Text value to set. + */ + void addYield(Text yield); +} diff --git a/generator/src/test/resources/data/filters/model/HowToItem.java b/generator/src/test/resources/data/filters/model/HowToItem.java new file mode 100644 index 00000000..c3c4edea --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HowToItem.java @@ -0,0 +1,52 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.QuantitativeValue; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * An item used as either a tool or supply when performing the instructions for how to achieve a result. + * + * @see https://schema.org/HowToItem + */ +public interface HowToItem extends ListItem { + + /** + * The required quantity of the item(s). + * + * @return {@link Number} or {@link Text} or {@link QuantitativeValue} + */ + List getRequiredQuantityList(); + + /** + * The required quantity of the item(s). + * + * @return {@link Number} or {@link Text} or {@link QuantitativeValue} + */ + T getRequiredQuantity(); + + /** + * The required quantity of the item(s). + * + * @param requiredQuantity Number value to set. + */ + void addRequiredQuantity(Number requiredQuantity); + /** + * The required quantity of the item(s). + * + * @param requiredQuantity Text value to set. + */ + void addRequiredQuantity(Text requiredQuantity); + /** + * The required quantity of the item(s). + * + * @param requiredQuantity QuantitativeValue value to set. + */ + void addRequiredQuantity(QuantitativeValue requiredQuantity); +} diff --git a/generator/src/test/resources/data/filters/model/HowToSection.java b/generator/src/test/resources/data/filters/model/HowToSection.java new file mode 100644 index 00000000..18cf9abb --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HowToSection.java @@ -0,0 +1,52 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CreativeWork; +import filters.model.ItemList; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A sub-grouping of steps in the instructions for how to achieve a result (e.g. steps for making a pie crust within a pie recipe). + * + * @see https://schema.org/HowToSection + */ +public interface HowToSection extends CreativeWork, ItemList, ListItem { + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @return {@link CreativeWork} or {@link ItemList} or {@link Text} + */ + List getStepsList(); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @return {@link CreativeWork} or {@link ItemList} or {@link Text} + */ + T getSteps(); + + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @param steps CreativeWork value to set. + */ + void addSteps(CreativeWork steps); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @param steps ItemList value to set. + */ + void addSteps(ItemList steps); + /** + * A single step item (as HowToStep, text, document, video, etc.) or a HowToSection (originally misnamed 'steps'; 'step' is preferred). + * + * @param steps Text value to set. + */ + void addSteps(Text steps); +} diff --git a/generator/src/test/resources/data/filters/model/HowToStep.java b/generator/src/test/resources/data/filters/model/HowToStep.java new file mode 100644 index 00000000..3a606a22 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HowToStep.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A step in the instructions for how to achieve a result. It is an ordered list with HowToDirection and/or HowToTip items. + * + * @see https://schema.org/HowToStep + */ +public interface HowToStep extends CreativeWork, ItemList, ListItem { +} diff --git a/generator/src/test/resources/data/filters/model/HowToSupply.java b/generator/src/test/resources/data/filters/model/HowToSupply.java new file mode 100644 index 00000000..c1083505 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HowToSupply.java @@ -0,0 +1,45 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MonetaryAmount; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A supply consumed when performing the instructions for how to achieve a result. + * + * @see https://schema.org/HowToSupply + */ +public interface HowToSupply extends HowToItem { + + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @return {@link MonetaryAmount} or {@link Text} + */ + List getEstimatedCostList(); + + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @return {@link MonetaryAmount} or {@link Text} + */ + T getEstimatedCost(); + + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @param estimatedCost MonetaryAmount value to set. + */ + void addEstimatedCost(MonetaryAmount estimatedCost); + /** + * The estimated cost of the supply or supplies consumed when performing instructions. + * + * @param estimatedCost Text value to set. + */ + void addEstimatedCost(Text estimatedCost); +} diff --git a/generator/src/test/resources/data/filters/model/HowToTool.java b/generator/src/test/resources/data/filters/model/HowToTool.java new file mode 100644 index 00000000..e8a59daa --- /dev/null +++ b/generator/src/test/resources/data/filters/model/HowToTool.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A tool used (but not consumed) when performing instructions for how to achieve a result. + * + * @see https://schema.org/HowToTool + */ +public interface HowToTool extends HowToItem { +} diff --git a/generator/src/test/resources/data/filters/model/ImageObject.java b/generator/src/test/resources/data/filters/model/ImageObject.java new file mode 100644 index 00000000..fa3bec84 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ImageObject.java @@ -0,0 +1,122 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MediaObject; +import filters.model.PropertyValue; +import filters.model.datatype.Boolean; +import filters.model.datatype.Text; +import java.util.List; + +/** + * An image file. + * + * @see https://schema.org/ImageObject + */ +public interface ImageObject extends MediaObject { + + /** + * The caption for this object. For downloadable machine formats (closed caption, subtitles etc.) use MediaObject and indicate the [[encodingFormat]]. + * + * @return {@link Text} or {@link MediaObject} + */ + List getCaptionList(); + + /** + * The caption for this object. For downloadable machine formats (closed caption, subtitles etc.) use MediaObject and indicate the [[encodingFormat]]. + * + * @return {@link Text} or {@link MediaObject} + */ + T getCaption(); + + /** + * The caption for this object. For downloadable machine formats (closed caption, subtitles etc.) use MediaObject and indicate the [[encodingFormat]]. + * + * @param caption Text value to set. + */ + void addCaption(Text caption); + /** + * The caption for this object. For downloadable machine formats (closed caption, subtitles etc.) use MediaObject and indicate the [[encodingFormat]]. + * + * @param caption MediaObject value to set. + */ + void addCaption(MediaObject caption); + + /** + * Represents textual captioning from a [[MediaObject]], e.g. text of a 'meme'. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + List getEmbeddedTextCaptionList(); + + /** + * Represents textual captioning from a [[MediaObject]], e.g. text of a 'meme'. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + Text getEmbeddedTextCaption(); + + /** + * Represents textual captioning from a [[MediaObject]], e.g. text of a 'meme'. + * + * @param embeddedTextCaption Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + void addEmbeddedTextCaption(Text embeddedTextCaption); + + /** + * exif data for this object. + * + * @return {@link PropertyValue} or {@link Text} + */ + List getExifDataList(); + + /** + * exif data for this object. + * + * @return {@link PropertyValue} or {@link Text} + */ + T getExifData(); + + /** + * exif data for this object. + * + * @param exifData PropertyValue value to set. + */ + void addExifData(PropertyValue exifData); + /** + * exif data for this object. + * + * @param exifData Text value to set. + */ + void addExifData(Text exifData); + + /** + * Indicates whether this image is representative of the content of the page. + * + * @return {@link Boolean} + */ + List getRepresentativeOfPageList(); + + /** + * Indicates whether this image is representative of the content of the page. + * + * @return {@link Boolean} + */ + Boolean getRepresentativeOfPage(); + + /** + * Indicates whether this image is representative of the content of the page. + * + * @param representativeOfPage Boolean value to set. + */ + void addRepresentativeOfPage(Boolean representativeOfPage); +} diff --git a/generator/src/test/resources/data/filters/model/InfectiousAgentClass.java b/generator/src/test/resources/data/filters/model/InfectiousAgentClass.java new file mode 100644 index 00000000..a4e7f218 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/InfectiousAgentClass.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Classes of agents or pathogens that transmit infectious diseases. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/InfectiousAgentClass + */ +public interface InfectiousAgentClass extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Intangible.java b/generator/src/test/resources/data/filters/model/Intangible.java new file mode 100644 index 00000000..96631bee --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Intangible.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A utility class that serves as the umbrella for a number of 'intangible' things such as quantities, structured values, etc. + * + * @see https://schema.org/Intangible + */ +public interface Intangible extends Thing { +} diff --git a/generator/src/test/resources/data/filters/model/InteractionCounter.java b/generator/src/test/resources/data/filters/model/InteractionCounter.java new file mode 100644 index 00000000..a7fd191a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/InteractionCounter.java @@ -0,0 +1,196 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Action; +import filters.model.Place; +import filters.model.PostalAddress; +import filters.model.SoftwareApplication; +import filters.model.VirtualLocation; +import filters.model.WebSite; +import filters.model.datatype.DateTime; +import filters.model.datatype.Integer; +import filters.model.datatype.Text; +import filters.model.datatype.Time; +import java.util.List; + +/** + * A summary of how users have interacted with this CreativeWork. In most cases, authors will use a subtype to specify the specific type of interaction. + * + * @see https://schema.org/InteractionCounter + */ +public interface InteractionCounter extends StructuredValue { + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + List getEndTimeList(); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + T getEndTime(); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param endTime DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addEndTime(DateTime endTime); + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param endTime Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addEndTime(Time endTime); + + /** + * The WebSite or SoftwareApplication where the interactions took place. + * + * @return {@link SoftwareApplication} or {@link WebSite} + */ + List getInteractionServiceList(); + + /** + * The WebSite or SoftwareApplication where the interactions took place. + * + * @return {@link SoftwareApplication} or {@link WebSite} + */ + T getInteractionService(); + + /** + * The WebSite or SoftwareApplication where the interactions took place. + * + * @param interactionService SoftwareApplication value to set. + */ + void addInteractionService(SoftwareApplication interactionService); + /** + * The WebSite or SoftwareApplication where the interactions took place. + * + * @param interactionService WebSite value to set. + */ + void addInteractionService(WebSite interactionService); + + /** + * The Action representing the type of interaction. For up votes, +1s, etc. use [[LikeAction]]. For down votes use [[DislikeAction]]. Otherwise, use the most specific Action. + * + * @return {@link Action} + */ + List getInteractionTypeList(); + + /** + * The Action representing the type of interaction. For up votes, +1s, etc. use [[LikeAction]]. For down votes use [[DislikeAction]]. Otherwise, use the most specific Action. + * + * @return {@link Action} + */ + Action getInteractionType(); + + /** + * The Action representing the type of interaction. For up votes, +1s, etc. use [[LikeAction]]. For down votes use [[DislikeAction]]. Otherwise, use the most specific Action. + * + * @param interactionType Action value to set. + */ + void addInteractionType(Action interactionType); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @return {@link Text} or {@link VirtualLocation} or {@link Place} or {@link PostalAddress} + */ + List getLocationList(); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @return {@link Text} or {@link VirtualLocation} or {@link Place} or {@link PostalAddress} + */ + T getLocation(); + + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location Text value to set. + */ + void addLocation(Text location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location VirtualLocation value to set. + */ + void addLocation(VirtualLocation location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location Place value to set. + */ + void addLocation(Place location); + /** + * The location of, for example, where an event is happening, where an organization is located, or where an action takes place. + * + * @param location PostalAddress value to set. + */ + void addLocation(PostalAddress location); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + List getStartTimeList(); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + T getStartTime(); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param startTime DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addStartTime(DateTime startTime); + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param startTime Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addStartTime(Time startTime); + + /** + * The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. + * + * @return {@link Integer} + */ + List getUserInteractionCountList(); + + /** + * The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. + * + * @return {@link Integer} + */ + Integer getUserInteractionCount(); + + /** + * The number of interactions for the CreativeWork using the WebSite or SoftwareApplication. + * + * @param userInteractionCount Integer value to set. + */ + void addUserInteractionCount(Integer userInteractionCount); +} diff --git a/generator/src/test/resources/data/filters/model/ItemAvailability.java b/generator/src/test/resources/data/filters/model/ItemAvailability.java new file mode 100644 index 00000000..90c47dab --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ItemAvailability.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A list of possible product availability options. + * + * @see https://schema.org/ItemAvailability + */ +public interface ItemAvailability extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/ItemList.java b/generator/src/test/resources/data/filters/model/ItemList.java new file mode 100644 index 00000000..d510330f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ItemList.java @@ -0,0 +1,129 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.ItemListOrderType; +import filters.model.ListItem; +import filters.model.Thing; +import filters.model.datatype.Integer; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A list of items of any sort—for example, Top 10 Movies About Weathermen, or Top 100 Party Songs. Not to be confused with HTML lists, which are often used only for formatting. + * + * @see https://schema.org/ItemList + */ +public interface ItemList extends Intangible { + + /** + * Indicates a prototype of the elements in the list that is used to hold aggregate information (ratings, offers, etc.). + * + * @return {@link Thing} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4321 + */ + List getAggregateElementList(); + + /** + * Indicates a prototype of the elements in the list that is used to hold aggregate information (ratings, offers, etc.). + * + * @return {@link Thing} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4321 + */ + Thing getAggregateElement(); + + /** + * Indicates a prototype of the elements in the list that is used to hold aggregate information (ratings, offers, etc.). + * + * @param aggregateElement Thing value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/4321 + */ + void addAggregateElement(Thing aggregateElement); + + /** + * For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.

    Text values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists.

    Note: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases. + * + * @return {@link Thing} or {@link ListItem} or {@link Text} + */ + List getItemListElementList(); + + /** + * For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.

    Text values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists.

    Note: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases. + * + * @return {@link Thing} or {@link ListItem} or {@link Text} + */ + T getItemListElement(); + + /** + * For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.

    Text values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists.

    Note: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases. + * + * @param itemListElement Thing value to set. + */ + void addItemListElement(Thing itemListElement); + /** + * For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.

    Text values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists.

    Note: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases. + * + * @param itemListElement ListItem value to set. + */ + void addItemListElement(ListItem itemListElement); + /** + * For itemListElement values, you can use simple strings (e.g. "Peter", "Paul", "Mary"), existing entities, or use ListItem.

    Text values are best if the elements in the list are plain strings. Existing entities are best for a simple, unordered list of existing things in your data. ListItem is used with ordered lists when you want to provide additional context about the element in that list or when the same item might be in different places in different lists.

    Note: The order of elements in your mark-up is not sufficient for indicating the order or elements. Use ListItem with a 'position' property in such cases. + * + * @param itemListElement Text value to set. + */ + void addItemListElement(Text itemListElement); + + /** + * Type of ordering (e.g. Ascending, Descending, Unordered). + * + * @return {@link ItemListOrderType} or {@link Text} + */ + List getItemListOrderList(); + + /** + * Type of ordering (e.g. Ascending, Descending, Unordered). + * + * @return {@link ItemListOrderType} or {@link Text} + */ + T getItemListOrder(); + + /** + * Type of ordering (e.g. Ascending, Descending, Unordered). + * + * @param itemListOrder ItemListOrderType value to set. + */ + void addItemListOrder(ItemListOrderType itemListOrder); + /** + * Type of ordering (e.g. Ascending, Descending, Unordered). + * + * @param itemListOrder Text value to set. + */ + void addItemListOrder(Text itemListOrder); + + /** + * The number of items in an ItemList. Note that some descriptions might not fully describe all items in a list (e.g., multi-page pagination); in such cases, the numberOfItems would be for the entire list. + * + * @return {@link Integer} + */ + List getNumberOfItemsList(); + + /** + * The number of items in an ItemList. Note that some descriptions might not fully describe all items in a list (e.g., multi-page pagination); in such cases, the numberOfItems would be for the entire list. + * + * @return {@link Integer} + */ + Integer getNumberOfItems(); + + /** + * The number of items in an ItemList. Note that some descriptions might not fully describe all items in a list (e.g., multi-page pagination); in such cases, the numberOfItems would be for the entire list. + * + * @param numberOfItems Integer value to set. + */ + void addNumberOfItems(Integer numberOfItems); +} diff --git a/generator/src/test/resources/data/filters/model/ItemListOrderType.java b/generator/src/test/resources/data/filters/model/ItemListOrderType.java new file mode 100644 index 00000000..ad3ec144 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ItemListOrderType.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerated for values for itemListOrder for indicating how an ordered ItemList is organized. + * + * @see https://schema.org/ItemListOrderType + */ +public interface ItemListOrderType extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Language.java b/generator/src/test/resources/data/filters/model/Language.java new file mode 100644 index 00000000..acc065a6 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Language.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Natural languages such as Spanish, Tamil, Hindi, English, etc. Formal language code tags expressed in [BCP 47](https://en.wikipedia.org/wiki/IETF_language_tag) can be used via the [[alternateName]] property. The Language type previously also covered programming languages such as Scheme and Lisp, which are now best represented using [[ComputerLanguage]]. + * + * @see https://schema.org/Language + */ +public interface Language extends Intangible { +} diff --git a/generator/src/test/resources/data/filters/model/LegalForceStatus.java b/generator/src/test/resources/data/filters/model/LegalForceStatus.java new file mode 100644 index 00000000..1abd963a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/LegalForceStatus.java @@ -0,0 +1,20 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A list of possible statuses for the legal force of a legislation. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1156 + * @see https://op.europa.eu/en/web/eu-vocabularies/model/-/resource/dataset/eli + * @see https://schema.org/docs/collab/ELI + * @see https://schema.org/LegalForceStatus + */ +public interface LegalForceStatus extends StatusEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/LifestyleModification.java b/generator/src/test/resources/data/filters/model/LifestyleModification.java new file mode 100644 index 00000000..1c669907 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/LifestyleModification.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A process of care involving exercise, changes to diet, fitness routines, and other lifestyle changes aimed at improving a health condition. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/LifestyleModification + */ +public interface LifestyleModification extends MedicalEntity { +} diff --git a/generator/src/test/resources/data/filters/model/ListItem.java b/generator/src/test/resources/data/filters/model/ListItem.java new file mode 100644 index 00000000..13c4578e --- /dev/null +++ b/generator/src/test/resources/data/filters/model/ListItem.java @@ -0,0 +1,110 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.ListItem; +import filters.model.Thing; +import filters.model.datatype.Integer; +import filters.model.datatype.Text; +import java.util.List; + +/** + * An list item, e.g. a step in a checklist or how-to description. + * + * @see https://schema.org/ListItem + */ +public interface ListItem extends Intangible { + + /** + * An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists'). + * + * @return {@link Thing} + */ + List getItemList(); + + /** + * An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists'). + * + * @return {@link Thing} + */ + Thing getItem(); + + /** + * An entity represented by an entry in a list or data feed (e.g. an 'artist' in a list of 'artists'). + * + * @param item Thing value to set. + */ + void addItem(Thing item); + + /** + * A link to the ListItem that follows the current one. + * + * @return {@link ListItem} + */ + List getNextItemList(); + + /** + * A link to the ListItem that follows the current one. + * + * @return {@link ListItem} + */ + ListItem getNextItem(); + + /** + * A link to the ListItem that follows the current one. + * + * @param nextItem ListItem value to set. + */ + void addNextItem(ListItem nextItem); + + /** + * The position of an item in a series or sequence of items. + * + * @return {@link Text} or {@link Integer} + */ + List getPositionList(); + + /** + * The position of an item in a series or sequence of items. + * + * @return {@link Text} or {@link Integer} + */ + T getPosition(); + + /** + * The position of an item in a series or sequence of items. + * + * @param position Text value to set. + */ + void addPosition(Text position); + /** + * The position of an item in a series or sequence of items. + * + * @param position Integer value to set. + */ + void addPosition(Integer position); + + /** + * A link to the ListItem that precedes the current one. + * + * @return {@link ListItem} + */ + List getPreviousItemList(); + + /** + * A link to the ListItem that precedes the current one. + * + * @return {@link ListItem} + */ + ListItem getPreviousItem(); + + /** + * A link to the ListItem that precedes the current one. + * + * @param previousItem ListItem value to set. + */ + void addPreviousItem(ListItem previousItem); +} diff --git a/generator/src/test/resources/data/filters/model/LoanOrCredit.java b/generator/src/test/resources/data/filters/model/LoanOrCredit.java new file mode 100644 index 00000000..c6b025c1 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/LoanOrCredit.java @@ -0,0 +1,299 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Duration; +import filters.model.MonetaryAmount; +import filters.model.QuantitativeValue; +import filters.model.RepaymentSpecification; +import filters.model.Thing; +import filters.model.datatype.Boolean; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A financial product for the loaning of an amount of money, or line of credit, under agreed terms and charges. + * + * @see https://schema.org/docs/collab/FIBO + * @see https://schema.org/LoanOrCredit + */ +public interface LoanOrCredit extends FinancialProduct { + + /** + * The amount of money. + * + * @return {@link Number} or {@link MonetaryAmount} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getAmountList(); + + /** + * The amount of money. + * + * @return {@link Number} or {@link MonetaryAmount} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + T getAmount(); + + /** + * The amount of money. + * + * @param amount Number value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addAmount(Number amount); + /** + * The amount of money. + * + * @param amount MonetaryAmount value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addAmount(MonetaryAmount amount); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + List getCurrencyList(); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + Text getCurrency(); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @param currency Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + void addCurrency(Text currency); + + /** + * The period of time after any due date that the borrower has to fulfil its obligations before a default (failure to pay) is deemed to have occurred. + * + * @return {@link Duration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + List getGracePeriodList(); + + /** + * The period of time after any due date that the borrower has to fulfil its obligations before a default (failure to pay) is deemed to have occurred. + * + * @return {@link Duration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + Duration getGracePeriod(); + + /** + * The period of time after any due date that the borrower has to fulfil its obligations before a default (failure to pay) is deemed to have occurred. + * + * @param gracePeriod Duration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + void addGracePeriod(Duration gracePeriod); + + /** + * A form of paying back money previously borrowed from a lender. Repayment usually takes the form of periodic payments that normally include part principal plus interest in each payment. + * + * @return {@link RepaymentSpecification} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + List getLoanRepaymentFormList(); + + /** + * A form of paying back money previously borrowed from a lender. Repayment usually takes the form of periodic payments that normally include part principal plus interest in each payment. + * + * @return {@link RepaymentSpecification} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + RepaymentSpecification getLoanRepaymentForm(); + + /** + * A form of paying back money previously borrowed from a lender. Repayment usually takes the form of periodic payments that normally include part principal plus interest in each payment. + * + * @param loanRepaymentForm RepaymentSpecification value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + void addLoanRepaymentForm(RepaymentSpecification loanRepaymentForm); + + /** + * The duration of the loan or credit agreement. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/FIBO + */ + List getLoanTermList(); + + /** + * The duration of the loan or credit agreement. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/FIBO + */ + QuantitativeValue getLoanTerm(); + + /** + * The duration of the loan or credit agreement. + * + * @param loanTerm QuantitativeValue value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addLoanTerm(QuantitativeValue loanTerm); + + /** + * The type of a loan or credit. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + List getLoanTypeList(); + + /** + * The type of a loan or credit. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + T getLoanType(); + + /** + * The type of a loan or credit. + * + * @param loanType URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + void addLoanType(URL loanType); + /** + * The type of a loan or credit. + * + * @param loanType Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + void addLoanType(Text loanType); + + /** + * The only way you get the money back in the event of default is the security. Recourse is where you still have the opportunity to go back to the borrower for the rest of the money. + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + List getRecourseLoanList(); + + /** + * The only way you get the money back in the event of default is the security. Recourse is where you still have the opportunity to go back to the borrower for the rest of the money. + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + Boolean getRecourseLoan(); + + /** + * The only way you get the money back in the event of default is the security. Recourse is where you still have the opportunity to go back to the borrower for the rest of the money. + * + * @param recourseLoan Boolean value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + void addRecourseLoan(Boolean recourseLoan); + + /** + * Whether the terms for payment of interest can be renegotiated during the life of the loan. + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + List getRenegotiableLoanList(); + + /** + * Whether the terms for payment of interest can be renegotiated during the life of the loan. + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + Boolean getRenegotiableLoan(); + + /** + * Whether the terms for payment of interest can be renegotiated during the life of the loan. + * + * @param renegotiableLoan Boolean value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1253 + * @see https://schema.org/docs/collab/FIBO + */ + void addRenegotiableLoan(Boolean renegotiableLoan); + + /** + * Assets required to secure loan or credit repayments. It may take form of third party pledge, goods, financial instruments (cash, securities, etc.) + * + * @return {@link Thing} or {@link Text} + * @see https://schema.org/docs/collab/FIBO + */ + List getRequiredCollateralList(); + + /** + * Assets required to secure loan or credit repayments. It may take form of third party pledge, goods, financial instruments (cash, securities, etc.) + * + * @return {@link Thing} or {@link Text} + * @see https://schema.org/docs/collab/FIBO + */ + T getRequiredCollateral(); + + /** + * Assets required to secure loan or credit repayments. It may take form of third party pledge, goods, financial instruments (cash, securities, etc.) + * + * @param requiredCollateral Thing value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addRequiredCollateral(Thing requiredCollateral); + /** + * Assets required to secure loan or credit repayments. It may take form of third party pledge, goods, financial instruments (cash, securities, etc.) + * + * @param requiredCollateral Text value to set. + * @see https://schema.org/docs/collab/FIBO + */ + void addRequiredCollateral(Text requiredCollateral); +} diff --git a/generator/src/test/resources/data/filters/model/LocationFeatureSpecification.java b/generator/src/test/resources/data/filters/model/LocationFeatureSpecification.java new file mode 100644 index 00000000..9c13e55a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/LocationFeatureSpecification.java @@ -0,0 +1,103 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.OpeningHoursSpecification; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import java.util.List; + +/** + * Specifies a location feature by providing a structured value representing a feature of an accommodation as a property-value pair of varying degrees of formality. + * + * @see https://schema.org/docs/collab/STI_Accommodation_Ontology + * @see https://schema.org/LocationFeatureSpecification + */ +public interface LocationFeatureSpecification extends PropertyValue { + + /** + * The hours during which this service or contact is available. + * + * @return {@link OpeningHoursSpecification} + */ + List getHoursAvailableList(); + + /** + * The hours during which this service or contact is available. + * + * @return {@link OpeningHoursSpecification} + */ + OpeningHoursSpecification getHoursAvailable(); + + /** + * The hours during which this service or contact is available. + * + * @param hoursAvailable OpeningHoursSpecification value to set. + */ + void addHoursAvailable(OpeningHoursSpecification hoursAvailable); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidFromList(); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidFrom(); + + /** + * The date when the item becomes valid. + * + * @param validFrom DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(DateTime validFrom); + /** + * The date when the item becomes valid. + * + * @param validFrom Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(Date validFrom); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidThroughList(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidThrough(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(DateTime validThrough); + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(Date validThrough); +} diff --git a/generator/src/test/resources/data/filters/model/Map.java b/generator/src/test/resources/data/filters/model/Map.java new file mode 100644 index 00000000..72f235d2 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Map.java @@ -0,0 +1,38 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MapCategoryType; +import java.util.List; + +/** + * A map. + * + * @see https://schema.org/Map + */ +public interface Map extends CreativeWork { + + /** + * Indicates the kind of Map, from the MapCategoryType Enumeration. + * + * @return {@link MapCategoryType} + */ + List getMapTypeList(); + + /** + * Indicates the kind of Map, from the MapCategoryType Enumeration. + * + * @return {@link MapCategoryType} + */ + MapCategoryType getMapType(); + + /** + * Indicates the kind of Map, from the MapCategoryType Enumeration. + * + * @param mapType MapCategoryType value to set. + */ + void addMapType(MapCategoryType mapType); +} diff --git a/generator/src/test/resources/data/filters/model/MapCategoryType.java b/generator/src/test/resources/data/filters/model/MapCategoryType.java new file mode 100644 index 00000000..e6d830fd --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MapCategoryType.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * An enumeration of several kinds of Map. + * + * @see https://schema.org/MapCategoryType + */ +public interface MapCategoryType extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/Mass.java b/generator/src/test/resources/data/filters/model/Mass.java new file mode 100644 index 00000000..302ed30c --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Mass.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Properties that take Mass as values are of the form '<Number> <Mass unit of measure>'. E.g., '7 kg'. + * + * @see https://schema.org/Mass + */ +public interface Mass extends Quantity { +} diff --git a/generator/src/test/resources/data/filters/model/MaximumDoseSchedule.java b/generator/src/test/resources/data/filters/model/MaximumDoseSchedule.java new file mode 100644 index 00000000..3723ad85 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MaximumDoseSchedule.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * The maximum dosing schedule considered safe for a drug or supplement as recommended by an authority or by the drug/supplement's manufacturer. Capture the recommending authority in the recognizingAuthority property of MedicalEntity. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MaximumDoseSchedule + */ +public interface MaximumDoseSchedule extends DoseSchedule { +} diff --git a/generator/src/test/resources/data/filters/model/MeasurementMethodEnum.java b/generator/src/test/resources/data/filters/model/MeasurementMethodEnum.java new file mode 100644 index 00000000..4cf0f327 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MeasurementMethodEnum.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumeration(s) for use with [[measurementMethod]]. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2564 + * @see https://schema.org/MeasurementMethodEnum + */ +public interface MeasurementMethodEnum extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MeasurementTypeEnumeration.java b/generator/src/test/resources/data/filters/model/MeasurementTypeEnumeration.java new file mode 100644 index 00000000..91c5b922 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MeasurementTypeEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumeration of common measurement types (or dimensions), for example "chest" for a person, "inseam" for pants, "gauge" for screws, or "wheel" for bicycles. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + * @see https://schema.org/MeasurementTypeEnumeration + */ +public interface MeasurementTypeEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MediaObject.java b/generator/src/test/resources/data/filters/model/MediaObject.java new file mode 100644 index 00000000..b54a3037 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MediaObject.java @@ -0,0 +1,587 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Claim; +import filters.model.CreativeWork; +import filters.model.Distance; +import filters.model.Duration; +import filters.model.GeoShape; +import filters.model.MediaSubscription; +import filters.model.NewsArticle; +import filters.model.Organization; +import filters.model.Place; +import filters.model.QuantitativeValue; +import filters.model.datatype.Boolean; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Text; +import filters.model.datatype.Time; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A media object, such as an image, video, audio, or text object embedded in a web page or a downloadable dataset i.e. DataDownload. Note that a creative work may have many media objects associated with it on the same web page. For example, a page about a single song (MusicRecording) may have a music video (VideoObject), and a high and low bandwidth audio stream (2 AudioObject's). + * + * @see https://schema.org/MediaObject + */ +public interface MediaObject extends CreativeWork { + + /** + * A NewsArticle associated with the Media Object. + * + * @return {@link NewsArticle} + */ + List getAssociatedArticleList(); + + /** + * A NewsArticle associated with the Media Object. + * + * @return {@link NewsArticle} + */ + NewsArticle getAssociatedArticle(); + + /** + * A NewsArticle associated with the Media Object. + * + * @param associatedArticle NewsArticle value to set. + */ + void addAssociatedArticle(NewsArticle associatedArticle); + + /** + * The bitrate of the media object. + * + * @return {@link Text} + */ + List getBitrateList(); + + /** + * The bitrate of the media object. + * + * @return {@link Text} + */ + Text getBitrate(); + + /** + * The bitrate of the media object. + * + * @param bitrate Text value to set. + */ + void addBitrate(Text bitrate); + + /** + * File size in (mega/kilo)bytes. + * + * @return {@link Text} + */ + List getContentSizeList(); + + /** + * File size in (mega/kilo)bytes. + * + * @return {@link Text} + */ + Text getContentSize(); + + /** + * File size in (mega/kilo)bytes. + * + * @param contentSize Text value to set. + */ + void addContentSize(Text contentSize); + + /** + * Actual bytes of the media object, for example the image file or video file. + * + * @return {@link URL} + */ + List getContentUrlList(); + + /** + * Actual bytes of the media object, for example the image file or video file. + * + * @return {@link URL} + */ + URL getContentUrl(); + + /** + * Actual bytes of the media object, for example the image file or video file. + * + * @param contentUrl URL value to set. + */ + void addContentUrl(URL contentUrl); + + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getDurationList(); + + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @return {@link Duration} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getDuration(); + + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param duration Duration value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addDuration(Duration duration); + /** + * The duration of the item (movie, audio recording, event, etc.) in [ISO 8601 duration format](http://en.wikipedia.org/wiki/ISO_8601). + * + * @param duration QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/1457 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addDuration(QuantitativeValue duration); + + /** + * A URL pointing to a player for a specific video. In general, this is the information in the ```src``` element of an ```embed``` tag and should not be the same as the content of the ```loc``` tag. + * + * @return {@link URL} + */ + List getEmbedUrlList(); + + /** + * A URL pointing to a player for a specific video. In general, this is the information in the ```src``` element of an ```embed``` tag and should not be the same as the content of the ```loc``` tag. + * + * @return {@link URL} + */ + URL getEmbedUrl(); + + /** + * A URL pointing to a player for a specific video. In general, this is the information in the ```src``` element of an ```embed``` tag and should not be the same as the content of the ```loc``` tag. + * + * @param embedUrl URL value to set. + */ + void addEmbedUrl(URL embedUrl); + + /** + * The CreativeWork encoded by this media object. + * + * @return {@link CreativeWork} + */ + List getEncodesCreativeWorkList(); + + /** + * The CreativeWork encoded by this media object. + * + * @return {@link CreativeWork} + */ + CreativeWork getEncodesCreativeWork(); + + /** + * The CreativeWork encoded by this media object. + * + * @param encodesCreativeWork CreativeWork value to set. + */ + void addEncodesCreativeWork(CreativeWork encodesCreativeWork); + + /** + * Media type typically expressed using a MIME format (see [IANA site](http://www.iana.org/assignments/media-types/media-types.xhtml) and [MDN reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)), e.g. application/zip for a SoftwareApplication binary, audio/mpeg for .mp3 etc. + * + * In cases where a [[CreativeWork]] has several media type representations, [[encoding]] can be used to indicate each [[MediaObject]] alongside particular [[encodingFormat]] information. + * + * Unregistered or niche encoding and file formats can be indicated instead via the most appropriate URL, e.g. defining Web page or a Wikipedia/Wikidata entry. + * + * @return {@link URL} or {@link Text} + */ + List getEncodingFormatList(); + + /** + * Media type typically expressed using a MIME format (see [IANA site](http://www.iana.org/assignments/media-types/media-types.xhtml) and [MDN reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)), e.g. application/zip for a SoftwareApplication binary, audio/mpeg for .mp3 etc. + * + * In cases where a [[CreativeWork]] has several media type representations, [[encoding]] can be used to indicate each [[MediaObject]] alongside particular [[encodingFormat]] information. + * + * Unregistered or niche encoding and file formats can be indicated instead via the most appropriate URL, e.g. defining Web page or a Wikipedia/Wikidata entry. + * + * @return {@link URL} or {@link Text} + */ + T getEncodingFormat(); + + /** + * Media type typically expressed using a MIME format (see [IANA site](http://www.iana.org/assignments/media-types/media-types.xhtml) and [MDN reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)), e.g. application/zip for a SoftwareApplication binary, audio/mpeg for .mp3 etc. + * + * In cases where a [[CreativeWork]] has several media type representations, [[encoding]] can be used to indicate each [[MediaObject]] alongside particular [[encodingFormat]] information. + * + * Unregistered or niche encoding and file formats can be indicated instead via the most appropriate URL, e.g. defining Web page or a Wikipedia/Wikidata entry. + * + * @param encodingFormat URL value to set. + */ + void addEncodingFormat(URL encodingFormat); + /** + * Media type typically expressed using a MIME format (see [IANA site](http://www.iana.org/assignments/media-types/media-types.xhtml) and [MDN reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types)), e.g. application/zip for a SoftwareApplication binary, audio/mpeg for .mp3 etc. + * + * In cases where a [[CreativeWork]] has several media type representations, [[encoding]] can be used to indicate each [[MediaObject]] alongside particular [[encodingFormat]] information. + * + * Unregistered or niche encoding and file formats can be indicated instead via the most appropriate URL, e.g. defining Web page or a Wikipedia/Wikidata entry. + * + * @param encodingFormat Text value to set. + */ + void addEncodingFormat(Text encodingFormat); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + List getEndTimeList(); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + T getEndTime(); + + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param endTime DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addEndTime(DateTime endTime); + /** + * The endTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to end. For actions that span a period of time, when the action was performed. E.g. John wrote a book from January to *December*. For media, including audio and video, it's the time offset of the end of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param endTime Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addEndTime(Time endTime); + + /** + * The height of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getHeightList(); + + /** + * The height of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getHeight(); + + /** + * The height of the item. + * + * @param height QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addHeight(QuantitativeValue height); + /** + * The height of the item. + * + * @param height Distance value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addHeight(Distance height); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + List getIneligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + T getIneligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion GeoShape value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(GeoShape ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Text ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Place value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Place ineligibleRegion); + + /** + * Used to indicate a specific claim contained, implied, translated or refined from the content of a [[MediaObject]] or other [[CreativeWork]]. The interpreting party can be indicated using [[claimInterpreter]]. + * + * @return {@link Claim} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + List getInterpretedAsClaimList(); + + /** + * Used to indicate a specific claim contained, implied, translated or refined from the content of a [[MediaObject]] or other [[CreativeWork]]. The interpreting party can be indicated using [[claimInterpreter]]. + * + * @return {@link Claim} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + Claim getInterpretedAsClaim(); + + /** + * Used to indicate a specific claim contained, implied, translated or refined from the content of a [[MediaObject]] or other [[CreativeWork]]. The interpreting party can be indicated using [[claimInterpreter]]. + * + * @param interpretedAsClaim Claim value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + void addInterpretedAsClaim(Claim interpretedAsClaim); + + /** + * Player type required—for example, Flash or Silverlight. + * + * @return {@link Text} + */ + List getPlayerTypeList(); + + /** + * Player type required—for example, Flash or Silverlight. + * + * @return {@link Text} + */ + Text getPlayerType(); + + /** + * Player type required—for example, Flash or Silverlight. + * + * @param playerType Text value to set. + */ + void addPlayerType(Text playerType); + + /** + * The production company or studio responsible for the item, e.g. series, video game, episode etc. + * + * @return {@link Organization} + */ + List getProductionCompanyList(); + + /** + * The production company or studio responsible for the item, e.g. series, video game, episode etc. + * + * @return {@link Organization} + */ + Organization getProductionCompany(); + + /** + * The production company or studio responsible for the item, e.g. series, video game, episode etc. + * + * @param productionCompany Organization value to set. + */ + void addProductionCompany(Organization productionCompany); + + /** + * The regions where the media is allowed. If not specified, then it's assumed to be allowed everywhere. Specify the countries in [ISO 3166 format](http://en.wikipedia.org/wiki/ISO_3166). + * + * @return {@link Place} + */ + List getRegionsAllowedList(); + + /** + * The regions where the media is allowed. If not specified, then it's assumed to be allowed everywhere. Specify the countries in [ISO 3166 format](http://en.wikipedia.org/wiki/ISO_3166). + * + * @return {@link Place} + */ + Place getRegionsAllowed(); + + /** + * The regions where the media is allowed. If not specified, then it's assumed to be allowed everywhere. Specify the countries in [ISO 3166 format](http://en.wikipedia.org/wiki/ISO_3166). + * + * @param regionsAllowed Place value to set. + */ + void addRegionsAllowed(Place regionsAllowed); + + /** + * Indicates if use of the media require a subscription (either paid or free). Allowed values are ```true``` or ```false``` (note that an earlier version had 'yes', 'no'). + * + * @return {@link Boolean} or {@link MediaSubscription} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + List getRequiresSubscriptionList(); + + /** + * Indicates if use of the media require a subscription (either paid or free). Allowed values are ```true``` or ```false``` (note that an earlier version had 'yes', 'no'). + * + * @return {@link Boolean} or {@link MediaSubscription} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + T getRequiresSubscription(); + + /** + * Indicates if use of the media require a subscription (either paid or free). Allowed values are ```true``` or ```false``` (note that an earlier version had 'yes', 'no'). + * + * @param requiresSubscription Boolean value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + void addRequiresSubscription(Boolean requiresSubscription); + /** + * Indicates if use of the media require a subscription (either paid or free). Allowed values are ```true``` or ```false``` (note that an earlier version had 'yes', 'no'). + * + * @param requiresSubscription MediaSubscription value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + void addRequiresSubscription(MediaSubscription requiresSubscription); + + /** + * The [SHA-2](https://en.wikipedia.org/wiki/SHA-2) SHA256 hash of the content of the item. For example, a zero-length input has value 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + List getSha256List(); + + /** + * The [SHA-2](https://en.wikipedia.org/wiki/SHA-2) SHA256 hash of the content of the item. For example, a zero-length input has value 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + Text getSha256(); + + /** + * The [SHA-2](https://en.wikipedia.org/wiki/SHA-2) SHA256 hash of the content of the item. For example, a zero-length input has value 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855'. + * + * @param sha256 Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2450 + */ + void addSha256(Text sha256); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + List getStartTimeList(); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @return {@link DateTime} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + T getStartTime(); + + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param startTime DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addStartTime(DateTime startTime); + /** + * The startTime of something. For a reserved event or service (e.g. FoodEstablishmentReservation), the time that it is expected to start. For actions that span a period of time, when the action was performed. E.g. John wrote a book from *January* to December. For media, including audio and video, it's the time offset of the start of a clip within a larger file.

    Note that Event uses startDate/endDate instead of startTime/endTime, even when describing dates with times. This situation may be clarified in future revisions. + * + * @param startTime Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2493 + */ + void addStartTime(Time startTime); + + /** + * Date (including time if available) when this media object was uploaded to this site. + * + * @return {@link DateTime} or {@link Date} + */ + List getUploadDateList(); + + /** + * Date (including time if available) when this media object was uploaded to this site. + * + * @return {@link DateTime} or {@link Date} + */ + T getUploadDate(); + + /** + * Date (including time if available) when this media object was uploaded to this site. + * + * @param uploadDate DateTime value to set. + */ + void addUploadDate(DateTime uploadDate); + /** + * Date (including time if available) when this media object was uploaded to this site. + * + * @param uploadDate Date value to set. + */ + void addUploadDate(Date uploadDate); + + /** + * The width of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getWidthList(); + + /** + * The width of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getWidth(); + + /** + * The width of the item. + * + * @param width QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addWidth(QuantitativeValue width); + /** + * The width of the item. + * + * @param width Distance value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addWidth(Distance width); +} diff --git a/generator/src/test/resources/data/filters/model/MediaSubscription.java b/generator/src/test/resources/data/filters/model/MediaSubscription.java new file mode 100644 index 00000000..9bc9af4a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MediaSubscription.java @@ -0,0 +1,67 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Offer; +import filters.model.Organization; +import java.util.List; + +/** + * A subscription which allows a user to access media including audio, video, books, etc. + * + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/MediaSubscription + */ +public interface MediaSubscription extends Intangible { + + /** + * The Organization responsible for authenticating the user's subscription. For example, many media apps require a cable/satellite provider to authenticate your subscription before playing media. + * + * @return {@link Organization} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + List getAuthenticatorList(); + + /** + * The Organization responsible for authenticating the user's subscription. For example, many media apps require a cable/satellite provider to authenticate your subscription before playing media. + * + * @return {@link Organization} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + Organization getAuthenticator(); + + /** + * The Organization responsible for authenticating the user's subscription. For example, many media apps require a cable/satellite provider to authenticate your subscription before playing media. + * + * @param authenticator Organization value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + void addAuthenticator(Organization authenticator); + + /** + * An Offer which must be accepted before the user can perform the Action. For example, the user may need to buy a movie before being able to watch it. + * + * @return {@link Offer} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + List getExpectsAcceptanceOfList(); + + /** + * An Offer which must be accepted before the user can perform the Action. For example, the user may need to buy a movie before being able to watch it. + * + * @return {@link Offer} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + Offer getExpectsAcceptanceOf(); + + /** + * An Offer which must be accepted before the user can perform the Action. For example, the user may need to buy a movie before being able to watch it. + * + * @param expectsAcceptanceOf Offer value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + */ + void addExpectsAcceptanceOf(Offer expectsAcceptanceOf); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalAudienceType.java b/generator/src/test/resources/data/filters/model/MedicalAudienceType.java new file mode 100644 index 00000000..73d191a3 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalAudienceType.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Target audiences types for medical web pages. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalAudienceType + */ +public interface MedicalAudienceType extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalCause.java b/generator/src/test/resources/data/filters/model/MedicalCause.java new file mode 100644 index 00000000..1d80ee01 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalCause.java @@ -0,0 +1,42 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalEntity; +import java.util.List; + +/** + * The causative agent(s) that are responsible for the pathophysiologic process that eventually results in a medical condition, symptom or sign. In this schema, unless otherwise specified this is meant to be the proximate cause of the medical condition, symptom or sign. The proximate cause is defined as the causative agent that most directly results in the medical condition, symptom or sign. For example, the HIV virus could be considered a cause of AIDS. Or in a diagnostic context, if a patient fell and sustained a hip fracture and two days later sustained a pulmonary embolism which eventuated in a cardiac arrest, the cause of the cardiac arrest (the proximate cause) would be the pulmonary embolism and not the fall. Medical causes can include cardiovascular, chemical, dermatologic, endocrine, environmental, gastroenterologic, genetic, hematologic, gynecologic, iatrogenic, infectious, musculoskeletal, neurologic, nutritional, obstetric, oncologic, otolaryngologic, pharmacologic, psychiatric, pulmonary, renal, rheumatologic, toxic, traumatic, or urologic causes; medical conditions can be causes as well. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalCause + */ +public interface MedicalCause extends MedicalEntity { + + /** + * The condition, complication, symptom, sign, etc. caused. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getCauseOfList(); + + /** + * The condition, complication, symptom, sign, etc. caused. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getCauseOf(); + + /** + * The condition, complication, symptom, sign, etc. caused. + * + * @param causeOf MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addCauseOf(MedicalEntity causeOf); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalCode.java b/generator/src/test/resources/data/filters/model/MedicalCode.java new file mode 100644 index 00000000..2c530762 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalCode.java @@ -0,0 +1,69 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.datatype.Text; +import java.util.List; + +/** + * A code for a medical entity. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalCode + */ +public interface MedicalCode extends MedicalIntangible, CategoryCode { + + /** + * A short textual code that uniquely identifies the value. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + List getCodeValueList(); + + /** + * A short textual code that uniquely identifies the value. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + Text getCodeValue(); + + /** + * A short textual code that uniquely identifies the value. + * + * @param codeValue Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/894 + */ + void addCodeValue(Text codeValue); + + /** + * The coding system, e.g. 'ICD-10'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getCodingSystemList(); + + /** + * The coding system, e.g. 'ICD-10'. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getCodingSystem(); + + /** + * The coding system, e.g. 'ICD-10'. + * + * @param codingSystem Text value to set. + * @see https://health-lifesci.schema.org + */ + void addCodingSystem(Text codingSystem); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalCondition.java b/generator/src/test/resources/data/filters/model/MedicalCondition.java new file mode 100644 index 00000000..37b98082 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalCondition.java @@ -0,0 +1,511 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AnatomicalStructure; +import filters.model.AnatomicalSystem; +import filters.model.DDxElement; +import filters.model.Drug; +import filters.model.DrugClass; +import filters.model.EventStatusType; +import filters.model.LifestyleModification; +import filters.model.MedicalCause; +import filters.model.MedicalConditionStage; +import filters.model.MedicalRiskFactor; +import filters.model.MedicalSignOrSymptom; +import filters.model.MedicalStudyStatus; +import filters.model.MedicalTest; +import filters.model.MedicalTherapy; +import filters.model.SuperficialAnatomy; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Any condition of the human body that affects the normal functioning of a person, whether physically or mentally. Includes diseases, injuries, disabilities, disorders, syndromes, etc. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalCondition + */ +public interface MedicalCondition extends MedicalEntity { + + /** + * The anatomy of the underlying organ system or structures associated with this entity. + * + * @return {@link SuperficialAnatomy} or {@link AnatomicalStructure} or {@link AnatomicalSystem} + * @see https://health-lifesci.schema.org + */ + List getAssociatedAnatomyList(); + + /** + * The anatomy of the underlying organ system or structures associated with this entity. + * + * @return {@link SuperficialAnatomy} or {@link AnatomicalStructure} or {@link AnatomicalSystem} + * @see https://health-lifesci.schema.org + */ + T getAssociatedAnatomy(); + + /** + * The anatomy of the underlying organ system or structures associated with this entity. + * + * @param associatedAnatomy SuperficialAnatomy value to set. + * @see https://health-lifesci.schema.org + */ + void addAssociatedAnatomy(SuperficialAnatomy associatedAnatomy); + /** + * The anatomy of the underlying organ system or structures associated with this entity. + * + * @param associatedAnatomy AnatomicalStructure value to set. + * @see https://health-lifesci.schema.org + */ + void addAssociatedAnatomy(AnatomicalStructure associatedAnatomy); + /** + * The anatomy of the underlying organ system or structures associated with this entity. + * + * @param associatedAnatomy AnatomicalSystem value to set. + * @see https://health-lifesci.schema.org + */ + void addAssociatedAnatomy(AnatomicalSystem associatedAnatomy); + + /** + * The cause of a medical condition. + * + * @return {@link MedicalCause} + * @see https://health-lifesci.schema.org + */ + List getCauseList(); + + /** + * The cause of a medical condition. + * + * @return {@link MedicalCause} + * @see https://health-lifesci.schema.org + */ + MedicalCause getCause(); + + /** + * The cause of a medical condition. + * + * @param cause MedicalCause value to set. + * @see https://health-lifesci.schema.org + */ + void addCause(MedicalCause cause); + + /** + * One of a set of differential diagnoses for the condition. Specifically, a closely-related or competing diagnosis typically considered later in the cognitive process whereby this medical condition is distinguished from others most likely responsible for a similar collection of signs and symptoms to reach the most parsimonious diagnosis or diagnoses in a patient. + * + * @return {@link DDxElement} + * @see https://health-lifesci.schema.org + */ + List getDifferentialDiagnosisList(); + + /** + * One of a set of differential diagnoses for the condition. Specifically, a closely-related or competing diagnosis typically considered later in the cognitive process whereby this medical condition is distinguished from others most likely responsible for a similar collection of signs and symptoms to reach the most parsimonious diagnosis or diagnoses in a patient. + * + * @return {@link DDxElement} + * @see https://health-lifesci.schema.org + */ + DDxElement getDifferentialDiagnosis(); + + /** + * One of a set of differential diagnoses for the condition. Specifically, a closely-related or competing diagnosis typically considered later in the cognitive process whereby this medical condition is distinguished from others most likely responsible for a similar collection of signs and symptoms to reach the most parsimonious diagnosis or diagnoses in a patient. + * + * @param differentialDiagnosis DDxElement value to set. + * @see https://health-lifesci.schema.org + */ + void addDifferentialDiagnosis(DDxElement differentialDiagnosis); + + /** + * Specifying a drug or medicine used in a medication procedure. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + List getDrugList(); + + /** + * Specifying a drug or medicine used in a medication procedure. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + Drug getDrug(); + + /** + * Specifying a drug or medicine used in a medication procedure. + * + * @param drug Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addDrug(Drug drug); + + /** + * The characteristics of associated patients, such as age, gender, race etc. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getEpidemiologyList(); + + /** + * The characteristics of associated patients, such as age, gender, race etc. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getEpidemiology(); + + /** + * The characteristics of associated patients, such as age, gender, race etc. + * + * @param epidemiology Text value to set. + * @see https://health-lifesci.schema.org + */ + void addEpidemiology(Text epidemiology); + + /** + * The likely outcome in either the short term or long term of the medical condition. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getExpectedPrognosisList(); + + /** + * The likely outcome in either the short term or long term of the medical condition. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getExpectedPrognosis(); + + /** + * The likely outcome in either the short term or long term of the medical condition. + * + * @param expectedPrognosis Text value to set. + * @see https://health-lifesci.schema.org + */ + void addExpectedPrognosis(Text expectedPrognosis); + + /** + * The expected progression of the condition if it is not treated and allowed to progress naturally. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getNaturalProgressionList(); + + /** + * The expected progression of the condition if it is not treated and allowed to progress naturally. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getNaturalProgression(); + + /** + * The expected progression of the condition if it is not treated and allowed to progress naturally. + * + * @param naturalProgression Text value to set. + * @see https://health-lifesci.schema.org + */ + void addNaturalProgression(Text naturalProgression); + + /** + * Changes in the normal mechanical, physical, and biochemical functions that are associated with this activity or condition. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getPathophysiologyList(); + + /** + * Changes in the normal mechanical, physical, and biochemical functions that are associated with this activity or condition. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getPathophysiology(); + + /** + * Changes in the normal mechanical, physical, and biochemical functions that are associated with this activity or condition. + * + * @param pathophysiology Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPathophysiology(Text pathophysiology); + + /** + * A possible unexpected and unfavorable evolution of a medical condition. Complications may include worsening of the signs or symptoms of the disease, extension of the condition to other organ systems, etc. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getPossibleComplicationList(); + + /** + * A possible unexpected and unfavorable evolution of a medical condition. Complications may include worsening of the signs or symptoms of the disease, extension of the condition to other organ systems, etc. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getPossibleComplication(); + + /** + * A possible unexpected and unfavorable evolution of a medical condition. Complications may include worsening of the signs or symptoms of the disease, extension of the condition to other organ systems, etc. + * + * @param possibleComplication Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleComplication(Text possibleComplication); + + /** + * A possible treatment to address this condition, sign or symptom. + * + * @return {@link Drug} or {@link DrugClass} or {@link MedicalTherapy} or {@link LifestyleModification} + * @see https://health-lifesci.schema.org + */ + List getPossibleTreatmentList(); + + /** + * A possible treatment to address this condition, sign or symptom. + * + * @return {@link Drug} or {@link DrugClass} or {@link MedicalTherapy} or {@link LifestyleModification} + * @see https://health-lifesci.schema.org + */ + T getPossibleTreatment(); + + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(Drug possibleTreatment); + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment DrugClass value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(DrugClass possibleTreatment); + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(MedicalTherapy possibleTreatment); + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment LifestyleModification value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(LifestyleModification possibleTreatment); + + /** + * A preventative therapy used to prevent an initial occurrence of the medical condition, such as vaccination. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + List getPrimaryPreventionList(); + + /** + * A preventative therapy used to prevent an initial occurrence of the medical condition, such as vaccination. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + MedicalTherapy getPrimaryPrevention(); + + /** + * A preventative therapy used to prevent an initial occurrence of the medical condition, such as vaccination. + * + * @param primaryPrevention MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addPrimaryPrevention(MedicalTherapy primaryPrevention); + + /** + * A modifiable or non-modifiable factor that increases the risk of a patient contracting this condition, e.g. age, coexisting condition. + * + * @return {@link MedicalRiskFactor} + * @see https://health-lifesci.schema.org + */ + List getRiskFactorList(); + + /** + * A modifiable or non-modifiable factor that increases the risk of a patient contracting this condition, e.g. age, coexisting condition. + * + * @return {@link MedicalRiskFactor} + * @see https://health-lifesci.schema.org + */ + MedicalRiskFactor getRiskFactor(); + + /** + * A modifiable or non-modifiable factor that increases the risk of a patient contracting this condition, e.g. age, coexisting condition. + * + * @param riskFactor MedicalRiskFactor value to set. + * @see https://health-lifesci.schema.org + */ + void addRiskFactor(MedicalRiskFactor riskFactor); + + /** + * A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition. + * + * @return {@link Drug} or {@link DrugClass} or {@link MedicalTherapy} or {@link LifestyleModification} + * @see https://health-lifesci.schema.org + */ + List getSecondaryPreventionList(); + + /** + * A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition. + * + * @return {@link Drug} or {@link DrugClass} or {@link MedicalTherapy} or {@link LifestyleModification} + * @see https://health-lifesci.schema.org + */ + T getSecondaryPrevention(); + + /** + * A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition. + * + * @param secondaryPrevention Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addSecondaryPrevention(Drug secondaryPrevention); + /** + * A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition. + * + * @param secondaryPrevention DrugClass value to set. + * @see https://health-lifesci.schema.org + */ + void addSecondaryPrevention(DrugClass secondaryPrevention); + /** + * A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition. + * + * @param secondaryPrevention MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addSecondaryPrevention(MedicalTherapy secondaryPrevention); + /** + * A preventative therapy used to prevent reoccurrence of the medical condition after an initial episode of the condition. + * + * @param secondaryPrevention LifestyleModification value to set. + * @see https://health-lifesci.schema.org + */ + void addSecondaryPrevention(LifestyleModification secondaryPrevention); + + /** + * A sign or symptom of this condition. Signs are objective or physically observable manifestations of the medical condition while symptoms are the subjective experience of the medical condition. + * + * @return {@link MedicalSignOrSymptom} + * @see https://health-lifesci.schema.org + */ + List getSignOrSymptomList(); + + /** + * A sign or symptom of this condition. Signs are objective or physically observable manifestations of the medical condition while symptoms are the subjective experience of the medical condition. + * + * @return {@link MedicalSignOrSymptom} + * @see https://health-lifesci.schema.org + */ + MedicalSignOrSymptom getSignOrSymptom(); + + /** + * A sign or symptom of this condition. Signs are objective or physically observable manifestations of the medical condition while symptoms are the subjective experience of the medical condition. + * + * @param signOrSymptom MedicalSignOrSymptom value to set. + * @see https://health-lifesci.schema.org + */ + void addSignOrSymptom(MedicalSignOrSymptom signOrSymptom); + + /** + * The stage of the condition, if applicable. + * + * @return {@link MedicalConditionStage} + * @see https://health-lifesci.schema.org + */ + List getStageList(); + + /** + * The stage of the condition, if applicable. + * + * @return {@link MedicalConditionStage} + * @see https://health-lifesci.schema.org + */ + MedicalConditionStage getStage(); + + /** + * The stage of the condition, if applicable. + * + * @param stage MedicalConditionStage value to set. + * @see https://health-lifesci.schema.org + */ + void addStage(MedicalConditionStage stage); + + /** + * The status of the study (enumerated). + * + * @return {@link EventStatusType} or {@link Text} or {@link MedicalStudyStatus} + * @see https://health-lifesci.schema.org + */ + List getStatusList(); + + /** + * The status of the study (enumerated). + * + * @return {@link EventStatusType} or {@link Text} or {@link MedicalStudyStatus} + * @see https://health-lifesci.schema.org + */ + T getStatus(); + + /** + * The status of the study (enumerated). + * + * @param status EventStatusType value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(EventStatusType status); + /** + * The status of the study (enumerated). + * + * @param status Text value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(Text status); + /** + * The status of the study (enumerated). + * + * @param status MedicalStudyStatus value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(MedicalStudyStatus status); + + /** + * A medical test typically performed given this condition. + * + * @return {@link MedicalTest} + * @see https://health-lifesci.schema.org + */ + List getTypicalTestList(); + + /** + * A medical test typically performed given this condition. + * + * @return {@link MedicalTest} + * @see https://health-lifesci.schema.org + */ + MedicalTest getTypicalTest(); + + /** + * A medical test typically performed given this condition. + * + * @param typicalTest MedicalTest value to set. + * @see https://health-lifesci.schema.org + */ + void addTypicalTest(MedicalTest typicalTest); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalConditionStage.java b/generator/src/test/resources/data/filters/model/MedicalConditionStage.java new file mode 100644 index 00000000..cb5fa095 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalConditionStage.java @@ -0,0 +1,67 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A stage of a medical condition, such as 'Stage IIIa'. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalConditionStage + */ +public interface MedicalConditionStage extends MedicalIntangible { + + /** + * The stage represented as a number, e.g. 3. + * + * @return {@link Number} + * @see https://health-lifesci.schema.org + */ + List getStageAsNumberList(); + + /** + * The stage represented as a number, e.g. 3. + * + * @return {@link Number} + * @see https://health-lifesci.schema.org + */ + Number getStageAsNumber(); + + /** + * The stage represented as a number, e.g. 3. + * + * @param stageAsNumber Number value to set. + * @see https://health-lifesci.schema.org + */ + void addStageAsNumber(Number stageAsNumber); + + /** + * The substage, e.g. 'a' for Stage IIIa. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getSubStageSuffixList(); + + /** + * The substage, e.g. 'a' for Stage IIIa. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getSubStageSuffix(); + + /** + * The substage, e.g. 'a' for Stage IIIa. + * + * @param subStageSuffix Text value to set. + * @see https://health-lifesci.schema.org + */ + void addSubStageSuffix(Text subStageSuffix); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalContraindication.java b/generator/src/test/resources/data/filters/model/MedicalContraindication.java new file mode 100644 index 00000000..8f8d6bea --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalContraindication.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A condition or factor that serves as a reason to withhold a certain medical therapy. Contraindications can be absolute (there are no reasonable circumstances for undertaking a course of action) or relative (the patient is at higher risk of complications, but these risks may be outweighed by other considerations or mitigated by other measures). + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalContraindication + */ +public interface MedicalContraindication extends MedicalEntity { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalDevice.java b/generator/src/test/resources/data/filters/model/MedicalDevice.java new file mode 100644 index 00000000..8eef85ac --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalDevice.java @@ -0,0 +1,171 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalContraindication; +import filters.model.MedicalEntity; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Any object used in a medical capacity, such as to diagnose or treat a patient. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalDevice + */ +public interface MedicalDevice extends MedicalEntity { + + /** + * A possible complication and/or side effect of this therapy. If it is known that an adverse outcome is serious (resulting in death, disability, or permanent damage; requiring hospitalization; or otherwise life-threatening or requiring immediate medical attention), tag it as a seriousAdverseOutcome instead. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getAdverseOutcomeList(); + + /** + * A possible complication and/or side effect of this therapy. If it is known that an adverse outcome is serious (resulting in death, disability, or permanent damage; requiring hospitalization; or otherwise life-threatening or requiring immediate medical attention), tag it as a seriousAdverseOutcome instead. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getAdverseOutcome(); + + /** + * A possible complication and/or side effect of this therapy. If it is known that an adverse outcome is serious (resulting in death, disability, or permanent damage; requiring hospitalization; or otherwise life-threatening or requiring immediate medical attention), tag it as a seriousAdverseOutcome instead. + * + * @param adverseOutcome MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addAdverseOutcome(MedicalEntity adverseOutcome); + + /** + * A contraindication for this therapy. + * + * @return {@link MedicalContraindication} or {@link Text} + * @see https://health-lifesci.schema.org + */ + List getContraindicationList(); + + /** + * A contraindication for this therapy. + * + * @return {@link MedicalContraindication} or {@link Text} + * @see https://health-lifesci.schema.org + */ + T getContraindication(); + + /** + * A contraindication for this therapy. + * + * @param contraindication MedicalContraindication value to set. + * @see https://health-lifesci.schema.org + */ + void addContraindication(MedicalContraindication contraindication); + /** + * A contraindication for this therapy. + * + * @param contraindication Text value to set. + * @see https://health-lifesci.schema.org + */ + void addContraindication(Text contraindication); + + /** + * A description of the postoperative procedures, care, and/or followups for this device. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getPostOpList(); + + /** + * A description of the postoperative procedures, care, and/or followups for this device. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getPostOp(); + + /** + * A description of the postoperative procedures, care, and/or followups for this device. + * + * @param postOp Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPostOp(Text postOp); + + /** + * A description of the workup, testing, and other preparations required before implanting this device. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getPreOpList(); + + /** + * A description of the workup, testing, and other preparations required before implanting this device. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getPreOp(); + + /** + * A description of the workup, testing, and other preparations required before implanting this device. + * + * @param preOp Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPreOp(Text preOp); + + /** + * A description of the procedure involved in setting up, using, and/or installing the device. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getProcedureList(); + + /** + * A description of the procedure involved in setting up, using, and/or installing the device. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getProcedure(); + + /** + * A description of the procedure involved in setting up, using, and/or installing the device. + * + * @param procedure Text value to set. + * @see https://health-lifesci.schema.org + */ + void addProcedure(Text procedure); + + /** + * A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getSeriousAdverseOutcomeList(); + + /** + * A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getSeriousAdverseOutcome(); + + /** + * A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition. + * + * @param seriousAdverseOutcome MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addSeriousAdverseOutcome(MedicalEntity seriousAdverseOutcome); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalDevicePurpose.java b/generator/src/test/resources/data/filters/model/MedicalDevicePurpose.java new file mode 100644 index 00000000..f250688f --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalDevicePurpose.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Categories of medical devices, organized by the purpose or intended use of the device. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalDevicePurpose + */ +public interface MedicalDevicePurpose extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalEntity.java b/generator/src/test/resources/data/filters/model/MedicalEntity.java new file mode 100644 index 00000000..a6139b92 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalEntity.java @@ -0,0 +1,239 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DrugLegalStatus; +import filters.model.Grant; +import filters.model.MedicalCode; +import filters.model.MedicalEnumeration; +import filters.model.MedicalGuideline; +import filters.model.MedicalSpecialty; +import filters.model.MedicalStudy; +import filters.model.MedicineSystem; +import filters.model.Organization; +import filters.model.datatype.Text; +import java.util.List; + +/** + * The most generic type of entity related to health and the practice of medicine. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalEntity + */ +public interface MedicalEntity extends Thing { + + /** + * A medical code for the entity, taken from a controlled vocabulary or ontology such as ICD-9, DiseasesDB, MeSH, SNOMED-CT, RxNorm, etc. + * + * @return {@link MedicalCode} + * @see https://health-lifesci.schema.org + */ + List getCodeList(); + + /** + * A medical code for the entity, taken from a controlled vocabulary or ontology such as ICD-9, DiseasesDB, MeSH, SNOMED-CT, RxNorm, etc. + * + * @return {@link MedicalCode} + * @see https://health-lifesci.schema.org + */ + MedicalCode getCode(); + + /** + * A medical code for the entity, taken from a controlled vocabulary or ontology such as ICD-9, DiseasesDB, MeSH, SNOMED-CT, RxNorm, etc. + * + * @param code MedicalCode value to set. + * @see https://health-lifesci.schema.org + */ + void addCode(MedicalCode code); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @return {@link Grant} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + List getFundingList(); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @return {@link Grant} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + Grant getFunding(); + + /** + * A [[Grant]] that directly or indirectly provide funding or sponsorship for this item. See also [[ownershipFundingInfo]]. + * + * @param funding Grant value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/383 + * @see https://schema.org/docs/collab/TP + */ + void addFunding(Grant funding); + + /** + * A medical guideline related to this entity. + * + * @return {@link MedicalGuideline} + * @see https://health-lifesci.schema.org + */ + List getGuidelineList(); + + /** + * A medical guideline related to this entity. + * + * @return {@link MedicalGuideline} + * @see https://health-lifesci.schema.org + */ + MedicalGuideline getGuideline(); + + /** + * A medical guideline related to this entity. + * + * @param guideline MedicalGuideline value to set. + * @see https://health-lifesci.schema.org + */ + void addGuideline(MedicalGuideline guideline); + + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @return {@link Text} or {@link DrugLegalStatus} or {@link MedicalEnumeration} + * @see https://health-lifesci.schema.org + */ + List getLegalStatusList(); + + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @return {@link Text} or {@link DrugLegalStatus} or {@link MedicalEnumeration} + * @see https://health-lifesci.schema.org + */ + T getLegalStatus(); + + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @param legalStatus Text value to set. + * @see https://health-lifesci.schema.org + */ + void addLegalStatus(Text legalStatus); + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @param legalStatus DrugLegalStatus value to set. + * @see https://health-lifesci.schema.org + */ + void addLegalStatus(DrugLegalStatus legalStatus); + /** + * The drug or supplement's legal status, including any controlled substance schedules that apply. + * + * @param legalStatus MedicalEnumeration value to set. + * @see https://health-lifesci.schema.org + */ + void addLegalStatus(MedicalEnumeration legalStatus); + + /** + * The system of medicine that includes this MedicalEntity, for example 'evidence-based', 'homeopathic', 'chiropractic', etc. + * + * @return {@link MedicineSystem} + * @see https://health-lifesci.schema.org + */ + List getMedicineSystemList(); + + /** + * The system of medicine that includes this MedicalEntity, for example 'evidence-based', 'homeopathic', 'chiropractic', etc. + * + * @return {@link MedicineSystem} + * @see https://health-lifesci.schema.org + */ + MedicineSystem getMedicineSystem(); + + /** + * The system of medicine that includes this MedicalEntity, for example 'evidence-based', 'homeopathic', 'chiropractic', etc. + * + * @param medicineSystem MedicineSystem value to set. + * @see https://health-lifesci.schema.org + */ + void addMedicineSystem(MedicineSystem medicineSystem); + + /** + * If applicable, the organization that officially recognizes this entity as part of its endorsed system of medicine. + * + * @return {@link Organization} + * @see https://health-lifesci.schema.org + */ + List getRecognizingAuthorityList(); + + /** + * If applicable, the organization that officially recognizes this entity as part of its endorsed system of medicine. + * + * @return {@link Organization} + * @see https://health-lifesci.schema.org + */ + Organization getRecognizingAuthority(); + + /** + * If applicable, the organization that officially recognizes this entity as part of its endorsed system of medicine. + * + * @param recognizingAuthority Organization value to set. + * @see https://health-lifesci.schema.org + */ + void addRecognizingAuthority(Organization recognizingAuthority); + + /** + * If applicable, a medical specialty in which this entity is relevant. + * + * @return {@link MedicalSpecialty} + * @see https://health-lifesci.schema.org + */ + List getRelevantSpecialtyList(); + + /** + * If applicable, a medical specialty in which this entity is relevant. + * + * @return {@link MedicalSpecialty} + * @see https://health-lifesci.schema.org + */ + MedicalSpecialty getRelevantSpecialty(); + + /** + * If applicable, a medical specialty in which this entity is relevant. + * + * @param relevantSpecialty MedicalSpecialty value to set. + * @see https://health-lifesci.schema.org + */ + void addRelevantSpecialty(MedicalSpecialty relevantSpecialty); + + /** + * A medical study or trial related to this entity. + * + * @return {@link MedicalStudy} + * @see https://health-lifesci.schema.org + */ + List getStudyList(); + + /** + * A medical study or trial related to this entity. + * + * @return {@link MedicalStudy} + * @see https://health-lifesci.schema.org + */ + MedicalStudy getStudy(); + + /** + * A medical study or trial related to this entity. + * + * @param study MedicalStudy value to set. + * @see https://health-lifesci.schema.org + */ + void addStudy(MedicalStudy study); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalEnumeration.java b/generator/src/test/resources/data/filters/model/MedicalEnumeration.java new file mode 100644 index 00000000..d3897554 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalEnumeration.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerations related to health and the practice of medicine: A concept that is used to attribute a quality to another concept, as a qualifier, a collection of items or a listing of all of the elements of a set in medicine practice. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalEnumeration + */ +public interface MedicalEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalEvidenceLevel.java b/generator/src/test/resources/data/filters/model/MedicalEvidenceLevel.java new file mode 100644 index 00000000..a68a0821 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalEvidenceLevel.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Level of evidence for a medical guideline. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalEvidenceLevel + */ +public interface MedicalEvidenceLevel extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalGuideline.java b/generator/src/test/resources/data/filters/model/MedicalGuideline.java new file mode 100644 index 00000000..5a97ba03 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalGuideline.java @@ -0,0 +1,117 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalEntity; +import filters.model.MedicalEvidenceLevel; +import filters.model.datatype.Date; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Any recommendation made by a standard society (e.g. ACC/AHA) or consensus statement that denotes how to diagnose and treat a particular condition. Note: this type should be used to tag the actual guideline recommendation; if the guideline recommendation occurs in a larger scholarly article, use MedicalScholarlyArticle to tag the overall article, not this type. Note also: the organization making the recommendation should be captured in the recognizingAuthority base property of MedicalEntity. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalGuideline + */ +public interface MedicalGuideline extends MedicalEntity { + + /** + * Strength of evidence of the data used to formulate the guideline (enumerated). + * + * @return {@link MedicalEvidenceLevel} + * @see https://health-lifesci.schema.org + */ + List getEvidenceLevelList(); + + /** + * Strength of evidence of the data used to formulate the guideline (enumerated). + * + * @return {@link MedicalEvidenceLevel} + * @see https://health-lifesci.schema.org + */ + MedicalEvidenceLevel getEvidenceLevel(); + + /** + * Strength of evidence of the data used to formulate the guideline (enumerated). + * + * @param evidenceLevel MedicalEvidenceLevel value to set. + * @see https://health-lifesci.schema.org + */ + void addEvidenceLevel(MedicalEvidenceLevel evidenceLevel); + + /** + * Source of the data used to formulate the guidance, e.g. RCT, consensus opinion, etc. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getEvidenceOriginList(); + + /** + * Source of the data used to formulate the guidance, e.g. RCT, consensus opinion, etc. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getEvidenceOrigin(); + + /** + * Source of the data used to formulate the guidance, e.g. RCT, consensus opinion, etc. + * + * @param evidenceOrigin Text value to set. + * @see https://health-lifesci.schema.org + */ + void addEvidenceOrigin(Text evidenceOrigin); + + /** + * Date on which this guideline's recommendation was made. + * + * @return {@link Date} + * @see https://health-lifesci.schema.org + */ + List getGuidelineDateList(); + + /** + * Date on which this guideline's recommendation was made. + * + * @return {@link Date} + * @see https://health-lifesci.schema.org + */ + Date getGuidelineDate(); + + /** + * Date on which this guideline's recommendation was made. + * + * @param guidelineDate Date value to set. + * @see https://health-lifesci.schema.org + */ + void addGuidelineDate(Date guidelineDate); + + /** + * The medical conditions, treatments, etc. that are the subject of the guideline. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getGuidelineSubjectList(); + + /** + * The medical conditions, treatments, etc. that are the subject of the guideline. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getGuidelineSubject(); + + /** + * The medical conditions, treatments, etc. that are the subject of the guideline. + * + * @param guidelineSubject MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addGuidelineSubject(MedicalEntity guidelineSubject); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalImagingTechnique.java b/generator/src/test/resources/data/filters/model/MedicalImagingTechnique.java new file mode 100644 index 00000000..df088092 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalImagingTechnique.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Any medical imaging modality typically used for diagnostic purposes. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalImagingTechnique + */ +public interface MedicalImagingTechnique extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalIntangible.java b/generator/src/test/resources/data/filters/model/MedicalIntangible.java new file mode 100644 index 00000000..d4ebefb6 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalIntangible.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A utility class that serves as the umbrella for a number of 'intangible' things in the medical space. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalIntangible + */ +public interface MedicalIntangible extends MedicalEntity { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalObservationalStudyDesign.java b/generator/src/test/resources/data/filters/model/MedicalObservationalStudyDesign.java new file mode 100644 index 00000000..25b84190 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalObservationalStudyDesign.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Design models for observational medical studies. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalObservationalStudyDesign + */ +public interface MedicalObservationalStudyDesign extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalProcedure.java b/generator/src/test/resources/data/filters/model/MedicalProcedure.java new file mode 100644 index 00000000..fe54fbae --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalProcedure.java @@ -0,0 +1,187 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.EventStatusType; +import filters.model.MedicalEntity; +import filters.model.MedicalProcedureType; +import filters.model.MedicalStudyStatus; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A process of care used in either a diagnostic, therapeutic, preventive or palliative capacity that relies on invasive (surgical), non-invasive, or other techniques. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalProcedure + */ +public interface MedicalProcedure extends MedicalEntity { + + /** + * Location in the body of the anatomical structure. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getBodyLocationList(); + + /** + * Location in the body of the anatomical structure. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getBodyLocation(); + + /** + * Location in the body of the anatomical structure. + * + * @param bodyLocation Text value to set. + * @see https://health-lifesci.schema.org + */ + void addBodyLocation(Text bodyLocation); + + /** + * Typical or recommended followup care after the procedure is performed. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getFollowupList(); + + /** + * Typical or recommended followup care after the procedure is performed. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getFollowup(); + + /** + * Typical or recommended followup care after the procedure is performed. + * + * @param followup Text value to set. + * @see https://health-lifesci.schema.org + */ + void addFollowup(Text followup); + + /** + * How the procedure is performed. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + List getHowPerformedList(); + + /** + * How the procedure is performed. + * + * @return {@link Text} + * @see https://health-lifesci.schema.org + */ + Text getHowPerformed(); + + /** + * How the procedure is performed. + * + * @param howPerformed Text value to set. + * @see https://health-lifesci.schema.org + */ + void addHowPerformed(Text howPerformed); + + /** + * Typical preparation that a patient must undergo before having the procedure performed. + * + * @return {@link Text} or {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getPreparationList(); + + /** + * Typical preparation that a patient must undergo before having the procedure performed. + * + * @return {@link Text} or {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + T getPreparation(); + + /** + * Typical preparation that a patient must undergo before having the procedure performed. + * + * @param preparation Text value to set. + * @see https://health-lifesci.schema.org + */ + void addPreparation(Text preparation); + /** + * Typical preparation that a patient must undergo before having the procedure performed. + * + * @param preparation MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addPreparation(MedicalEntity preparation); + + /** + * The type of procedure, for example Surgical, Noninvasive, or Percutaneous. + * + * @return {@link MedicalProcedureType} + * @see https://health-lifesci.schema.org + */ + List getProcedureTypeList(); + + /** + * The type of procedure, for example Surgical, Noninvasive, or Percutaneous. + * + * @return {@link MedicalProcedureType} + * @see https://health-lifesci.schema.org + */ + MedicalProcedureType getProcedureType(); + + /** + * The type of procedure, for example Surgical, Noninvasive, or Percutaneous. + * + * @param procedureType MedicalProcedureType value to set. + * @see https://health-lifesci.schema.org + */ + void addProcedureType(MedicalProcedureType procedureType); + + /** + * The status of the study (enumerated). + * + * @return {@link EventStatusType} or {@link Text} or {@link MedicalStudyStatus} + * @see https://health-lifesci.schema.org + */ + List getStatusList(); + + /** + * The status of the study (enumerated). + * + * @return {@link EventStatusType} or {@link Text} or {@link MedicalStudyStatus} + * @see https://health-lifesci.schema.org + */ + T getStatus(); + + /** + * The status of the study (enumerated). + * + * @param status EventStatusType value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(EventStatusType status); + /** + * The status of the study (enumerated). + * + * @param status Text value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(Text status); + /** + * The status of the study (enumerated). + * + * @param status MedicalStudyStatus value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(MedicalStudyStatus status); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalProcedureType.java b/generator/src/test/resources/data/filters/model/MedicalProcedureType.java new file mode 100644 index 00000000..ce4f2945 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalProcedureType.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * An enumeration that describes different types of medical procedures. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalProcedureType + */ +public interface MedicalProcedureType extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalRiskFactor.java b/generator/src/test/resources/data/filters/model/MedicalRiskFactor.java new file mode 100644 index 00000000..58abe464 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalRiskFactor.java @@ -0,0 +1,42 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalEntity; +import java.util.List; + +/** + * A risk factor is anything that increases a person's likelihood of developing or contracting a disease, medical condition, or complication. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalRiskFactor + */ +public interface MedicalRiskFactor extends MedicalEntity { + + /** + * The condition, complication, etc. influenced by this factor. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getIncreasesRiskOfList(); + + /** + * The condition, complication, etc. influenced by this factor. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getIncreasesRiskOf(); + + /** + * The condition, complication, etc. influenced by this factor. + * + * @param increasesRiskOf MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addIncreasesRiskOf(MedicalEntity increasesRiskOf); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalSign.java b/generator/src/test/resources/data/filters/model/MedicalSign.java new file mode 100644 index 00000000..d8474234 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalSign.java @@ -0,0 +1,67 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalTest; +import filters.model.PhysicalExam; +import java.util.List; + +/** + * Any physical manifestation of a person's medical condition discoverable by objective diagnostic tests or physical examination. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalSign + */ +public interface MedicalSign extends MedicalSignOrSymptom { + + /** + * A physical examination that can identify this sign. + * + * @return {@link PhysicalExam} + * @see https://health-lifesci.schema.org + */ + List getIdentifyingExamList(); + + /** + * A physical examination that can identify this sign. + * + * @return {@link PhysicalExam} + * @see https://health-lifesci.schema.org + */ + PhysicalExam getIdentifyingExam(); + + /** + * A physical examination that can identify this sign. + * + * @param identifyingExam PhysicalExam value to set. + * @see https://health-lifesci.schema.org + */ + void addIdentifyingExam(PhysicalExam identifyingExam); + + /** + * A diagnostic test that can identify this sign. + * + * @return {@link MedicalTest} + * @see https://health-lifesci.schema.org + */ + List getIdentifyingTestList(); + + /** + * A diagnostic test that can identify this sign. + * + * @return {@link MedicalTest} + * @see https://health-lifesci.schema.org + */ + MedicalTest getIdentifyingTest(); + + /** + * A diagnostic test that can identify this sign. + * + * @param identifyingTest MedicalTest value to set. + * @see https://health-lifesci.schema.org + */ + void addIdentifyingTest(MedicalTest identifyingTest); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalSignOrSymptom.java b/generator/src/test/resources/data/filters/model/MedicalSignOrSymptom.java new file mode 100644 index 00000000..858ee31d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalSignOrSymptom.java @@ -0,0 +1,66 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Drug; +import filters.model.DrugClass; +import filters.model.LifestyleModification; +import filters.model.MedicalTherapy; +import java.util.List; + +/** + * Any feature associated or not with a medical condition. In medicine a symptom is generally subjective while a sign is objective. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalSignOrSymptom + */ +public interface MedicalSignOrSymptom extends MedicalCondition { + + /** + * A possible treatment to address this condition, sign or symptom. + * + * @return {@link Drug} or {@link DrugClass} or {@link MedicalTherapy} or {@link LifestyleModification} + * @see https://health-lifesci.schema.org + */ + List getPossibleTreatmentList(); + + /** + * A possible treatment to address this condition, sign or symptom. + * + * @return {@link Drug} or {@link DrugClass} or {@link MedicalTherapy} or {@link LifestyleModification} + * @see https://health-lifesci.schema.org + */ + T getPossibleTreatment(); + + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(Drug possibleTreatment); + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment DrugClass value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(DrugClass possibleTreatment); + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(MedicalTherapy possibleTreatment); + /** + * A possible treatment to address this condition, sign or symptom. + * + * @param possibleTreatment LifestyleModification value to set. + * @see https://health-lifesci.schema.org + */ + void addPossibleTreatment(LifestyleModification possibleTreatment); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalSpecialty.java b/generator/src/test/resources/data/filters/model/MedicalSpecialty.java new file mode 100644 index 00000000..ad0e36a0 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalSpecialty.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Any specific branch of medical science or practice. Medical specialities include clinical specialties that pertain to particular organ systems and their respective disease states, as well as allied health specialties. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalSpecialty + */ +public interface MedicalSpecialty extends Specialty, MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalStudy.java b/generator/src/test/resources/data/filters/model/MedicalStudy.java new file mode 100644 index 00000000..e38ef015 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalStudy.java @@ -0,0 +1,162 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.EventStatusType; +import filters.model.MedicalCondition; +import filters.model.MedicalEntity; +import filters.model.MedicalStudyStatus; +import filters.model.Organization; +import filters.model.Person; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A medical study is an umbrella type covering all kinds of research studies relating to human medicine or health, including observational studies and interventional trials and registries, randomized, controlled or not. When the specific type of study is known, use one of the extensions of this type, such as MedicalTrial or MedicalObservationalStudy. Also, note that this type should be used to mark up data that describes the study itself; to tag an article that publishes the results of a study, use MedicalScholarlyArticle. Note: use the code property of MedicalEntity to store study IDs, e.g. clinicaltrials.gov ID. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalStudy + */ +public interface MedicalStudy extends MedicalEntity { + + /** + * Specifying the health condition(s) of a patient, medical study, or other target audience. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + List getHealthConditionList(); + + /** + * Specifying the health condition(s) of a patient, medical study, or other target audience. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + MedicalCondition getHealthCondition(); + + /** + * Specifying the health condition(s) of a patient, medical study, or other target audience. + * + * @param healthCondition MedicalCondition value to set. + * @see https://health-lifesci.schema.org + */ + void addHealthCondition(MedicalCondition healthCondition); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @return {@link Person} or {@link Organization} + */ + List getSponsorList(); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @return {@link Person} or {@link Organization} + */ + T getSponsor(); + + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @param sponsor Person value to set. + */ + void addSponsor(Person sponsor); + /** + * A person or organization that supports a thing through a pledge, promise, or financial contribution. E.g. a sponsor of a Medical Study or a corporate sponsor of an event. + * + * @param sponsor Organization value to set. + */ + void addSponsor(Organization sponsor); + + /** + * The status of the study (enumerated). + * + * @return {@link EventStatusType} or {@link Text} or {@link MedicalStudyStatus} + * @see https://health-lifesci.schema.org + */ + List getStatusList(); + + /** + * The status of the study (enumerated). + * + * @return {@link EventStatusType} or {@link Text} or {@link MedicalStudyStatus} + * @see https://health-lifesci.schema.org + */ + T getStatus(); + + /** + * The status of the study (enumerated). + * + * @param status EventStatusType value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(EventStatusType status); + /** + * The status of the study (enumerated). + * + * @param status Text value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(Text status); + /** + * The status of the study (enumerated). + * + * @param status MedicalStudyStatus value to set. + * @see https://health-lifesci.schema.org + */ + void addStatus(MedicalStudyStatus status); + + /** + * The location in which the study is taking/took place. + * + * @return {@link AdministrativeArea} + * @see https://health-lifesci.schema.org + */ + List getStudyLocationList(); + + /** + * The location in which the study is taking/took place. + * + * @return {@link AdministrativeArea} + * @see https://health-lifesci.schema.org + */ + AdministrativeArea getStudyLocation(); + + /** + * The location in which the study is taking/took place. + * + * @param studyLocation AdministrativeArea value to set. + * @see https://health-lifesci.schema.org + */ + void addStudyLocation(AdministrativeArea studyLocation); + + /** + * A subject of the study, i.e. one of the medical conditions, therapies, devices, drugs, etc. investigated by the study. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getStudySubjectList(); + + /** + * A subject of the study, i.e. one of the medical conditions, therapies, devices, drugs, etc. investigated by the study. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getStudySubject(); + + /** + * A subject of the study, i.e. one of the medical conditions, therapies, devices, drugs, etc. investigated by the study. + * + * @param studySubject MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addStudySubject(MedicalEntity studySubject); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalStudyStatus.java b/generator/src/test/resources/data/filters/model/MedicalStudyStatus.java new file mode 100644 index 00000000..72980699 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalStudyStatus.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * The status of a medical study. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalStudyStatus + */ +public interface MedicalStudyStatus extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicalTest.java b/generator/src/test/resources/data/filters/model/MedicalTest.java new file mode 100644 index 00000000..a90457f8 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalTest.java @@ -0,0 +1,150 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Drug; +import filters.model.MedicalCondition; +import filters.model.MedicalDevice; +import filters.model.MedicalEnumeration; +import filters.model.MedicalSign; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Any medical test, typically performed for diagnostic purposes. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalTest + */ +public interface MedicalTest extends MedicalEntity { + + /** + * Drugs that affect the test's results. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + List getAffectedByList(); + + /** + * Drugs that affect the test's results. + * + * @return {@link Drug} + * @see https://health-lifesci.schema.org + */ + Drug getAffectedBy(); + + /** + * Drugs that affect the test's results. + * + * @param affectedBy Drug value to set. + * @see https://health-lifesci.schema.org + */ + void addAffectedBy(Drug affectedBy); + + /** + * Range of acceptable values for a typical patient, when applicable. + * + * @return {@link MedicalEnumeration} or {@link Text} + * @see https://health-lifesci.schema.org + */ + List getNormalRangeList(); + + /** + * Range of acceptable values for a typical patient, when applicable. + * + * @return {@link MedicalEnumeration} or {@link Text} + * @see https://health-lifesci.schema.org + */ + T getNormalRange(); + + /** + * Range of acceptable values for a typical patient, when applicable. + * + * @param normalRange MedicalEnumeration value to set. + * @see https://health-lifesci.schema.org + */ + void addNormalRange(MedicalEnumeration normalRange); + /** + * Range of acceptable values for a typical patient, when applicable. + * + * @param normalRange Text value to set. + * @see https://health-lifesci.schema.org + */ + void addNormalRange(Text normalRange); + + /** + * A sign detected by the test. + * + * @return {@link MedicalSign} + * @see https://health-lifesci.schema.org + */ + List getSignDetectedList(); + + /** + * A sign detected by the test. + * + * @return {@link MedicalSign} + * @see https://health-lifesci.schema.org + */ + MedicalSign getSignDetected(); + + /** + * A sign detected by the test. + * + * @param signDetected MedicalSign value to set. + * @see https://health-lifesci.schema.org + */ + void addSignDetected(MedicalSign signDetected); + + /** + * A condition the test is used to diagnose. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + List getUsedToDiagnoseList(); + + /** + * A condition the test is used to diagnose. + * + * @return {@link MedicalCondition} + * @see https://health-lifesci.schema.org + */ + MedicalCondition getUsedToDiagnose(); + + /** + * A condition the test is used to diagnose. + * + * @param usedToDiagnose MedicalCondition value to set. + * @see https://health-lifesci.schema.org + */ + void addUsedToDiagnose(MedicalCondition usedToDiagnose); + + /** + * Device used to perform the test. + * + * @return {@link MedicalDevice} + * @see https://health-lifesci.schema.org + */ + List getUsesDeviceList(); + + /** + * Device used to perform the test. + * + * @return {@link MedicalDevice} + * @see https://health-lifesci.schema.org + */ + MedicalDevice getUsesDevice(); + + /** + * Device used to perform the test. + * + * @param usesDevice MedicalDevice value to set. + * @see https://health-lifesci.schema.org + */ + void addUsesDevice(MedicalDevice usesDevice); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalTherapy.java b/generator/src/test/resources/data/filters/model/MedicalTherapy.java new file mode 100644 index 00000000..36866574 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalTherapy.java @@ -0,0 +1,100 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MedicalContraindication; +import filters.model.MedicalEntity; +import filters.model.MedicalTherapy; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Any medical intervention designed to prevent, treat, and cure human diseases and medical conditions, including both curative and palliative therapies. Medical therapies are typically processes of care relying upon pharmacotherapy, behavioral therapy, supportive therapy (with fluid or nutrition for example), or detoxification (e.g. hemodialysis) aimed at improving or preventing a health condition. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicalTherapy + */ +public interface MedicalTherapy extends TherapeuticProcedure { + + /** + * A contraindication for this therapy. + * + * @return {@link MedicalContraindication} or {@link Text} + * @see https://health-lifesci.schema.org + */ + List getContraindicationList(); + + /** + * A contraindication for this therapy. + * + * @return {@link MedicalContraindication} or {@link Text} + * @see https://health-lifesci.schema.org + */ + T getContraindication(); + + /** + * A contraindication for this therapy. + * + * @param contraindication MedicalContraindication value to set. + * @see https://health-lifesci.schema.org + */ + void addContraindication(MedicalContraindication contraindication); + /** + * A contraindication for this therapy. + * + * @param contraindication Text value to set. + * @see https://health-lifesci.schema.org + */ + void addContraindication(Text contraindication); + + /** + * A therapy that duplicates or overlaps this one. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + List getDuplicateTherapyList(); + + /** + * A therapy that duplicates or overlaps this one. + * + * @return {@link MedicalTherapy} + * @see https://health-lifesci.schema.org + */ + MedicalTherapy getDuplicateTherapy(); + + /** + * A therapy that duplicates or overlaps this one. + * + * @param duplicateTherapy MedicalTherapy value to set. + * @see https://health-lifesci.schema.org + */ + void addDuplicateTherapy(MedicalTherapy duplicateTherapy); + + /** + * A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + List getSeriousAdverseOutcomeList(); + + /** + * A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition. + * + * @return {@link MedicalEntity} + * @see https://health-lifesci.schema.org + */ + MedicalEntity getSeriousAdverseOutcome(); + + /** + * A possible serious complication and/or serious side effect of this therapy. Serious adverse outcomes include those that are life-threatening; result in death, disability, or permanent damage; require hospitalization or prolong existing hospitalization; cause congenital anomalies or birth defects; or jeopardize the patient and may require medical or surgical intervention to prevent one of the outcomes in this definition. + * + * @param seriousAdverseOutcome MedicalEntity value to set. + * @see https://health-lifesci.schema.org + */ + void addSeriousAdverseOutcome(MedicalEntity seriousAdverseOutcome); +} diff --git a/generator/src/test/resources/data/filters/model/MedicalTrialDesign.java b/generator/src/test/resources/data/filters/model/MedicalTrialDesign.java new file mode 100644 index 00000000..eab7e9af --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicalTrialDesign.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Design models for medical trials. Enumerated type. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/docs/collab/WikiDoc + * @see https://schema.org/MedicalTrialDesign + */ +public interface MedicalTrialDesign extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MedicineSystem.java b/generator/src/test/resources/data/filters/model/MedicineSystem.java new file mode 100644 index 00000000..b515ae91 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MedicineSystem.java @@ -0,0 +1,17 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Systems of medical practice. + * + * @see https://health-lifesci.schema.org + * @see https://schema.org/MedicineSystem + */ +public interface MedicineSystem extends MedicalEnumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MemberProgram.java b/generator/src/test/resources/data/filters/model/MemberProgram.java new file mode 100644 index 00000000..4a41d95d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MemberProgram.java @@ -0,0 +1,65 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MemberProgramTier; +import filters.model.Organization; +import java.util.List; + +/** + * A MemberProgram defines a loyalty (or membership) program that provides its members with certain benefits, for example better pricing, free shipping or returns, or the ability to earn loyalty points. Member programs may have multiple tiers, for example silver and gold members, each with different benefits. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3563 + * @see https://schema.org/MemberProgram + */ +public interface MemberProgram extends Intangible { + + /** + * The tiers of a member program. + * + * @return {@link MemberProgramTier} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getHasTiersList(); + + /** + * The tiers of a member program. + * + * @return {@link MemberProgramTier} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + MemberProgramTier getHasTiers(); + + /** + * The tiers of a member program. + * + * @param hasTiers MemberProgramTier value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addHasTiers(MemberProgramTier hasTiers); + + /** + * The Organization (airline, travelers' club, retailer, etc.) the membership is made with or which offers the MemberProgram. + * + * @return {@link Organization} + */ + List getHostingOrganizationList(); + + /** + * The Organization (airline, travelers' club, retailer, etc.) the membership is made with or which offers the MemberProgram. + * + * @return {@link Organization} + */ + Organization getHostingOrganization(); + + /** + * The Organization (airline, travelers' club, retailer, etc.) the membership is made with or which offers the MemberProgram. + * + * @param hostingOrganization Organization value to set. + */ + void addHostingOrganization(Organization hostingOrganization); +} diff --git a/generator/src/test/resources/data/filters/model/MemberProgramTier.java b/generator/src/test/resources/data/filters/model/MemberProgramTier.java new file mode 100644 index 00000000..e00f7753 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MemberProgramTier.java @@ -0,0 +1,154 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.CreditCard; +import filters.model.MemberProgram; +import filters.model.MonetaryAmount; +import filters.model.QuantitativeValue; +import filters.model.TierBenefitEnumeration; +import filters.model.UnitPriceSpecification; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A MemberProgramTier specifies a tier under a loyalty (member) program, for example "gold". + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3563 + * @see https://schema.org/MemberProgramTier + */ +public interface MemberProgramTier extends Intangible { + + /** + * A member benefit for a particular tier of a loyalty program. + * + * @return {@link TierBenefitEnumeration} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getHasTierBenefitList(); + + /** + * A member benefit for a particular tier of a loyalty program. + * + * @return {@link TierBenefitEnumeration} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + TierBenefitEnumeration getHasTierBenefit(); + + /** + * A member benefit for a particular tier of a loyalty program. + * + * @param hasTierBenefit TierBenefitEnumeration value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addHasTierBenefit(TierBenefitEnumeration hasTierBenefit); + + /** + * A requirement for a user to join a membership tier, for example: a CreditCard if the tier requires sign up for a credit card, A UnitPriceSpecification if the user is required to pay a (periodic) fee, or a MonetaryAmount if the user needs to spend a minimum amount to join the tier. If a tier is free to join then this property does not need to be specified. + * + * @return {@link MonetaryAmount} or {@link Text} or {@link CreditCard} or {@link UnitPriceSpecification} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getHasTierRequirementList(); + + /** + * A requirement for a user to join a membership tier, for example: a CreditCard if the tier requires sign up for a credit card, A UnitPriceSpecification if the user is required to pay a (periodic) fee, or a MonetaryAmount if the user needs to spend a minimum amount to join the tier. If a tier is free to join then this property does not need to be specified. + * + * @return {@link MonetaryAmount} or {@link Text} or {@link CreditCard} or {@link UnitPriceSpecification} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + T getHasTierRequirement(); + + /** + * A requirement for a user to join a membership tier, for example: a CreditCard if the tier requires sign up for a credit card, A UnitPriceSpecification if the user is required to pay a (periodic) fee, or a MonetaryAmount if the user needs to spend a minimum amount to join the tier. If a tier is free to join then this property does not need to be specified. + * + * @param hasTierRequirement MonetaryAmount value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addHasTierRequirement(MonetaryAmount hasTierRequirement); + /** + * A requirement for a user to join a membership tier, for example: a CreditCard if the tier requires sign up for a credit card, A UnitPriceSpecification if the user is required to pay a (periodic) fee, or a MonetaryAmount if the user needs to spend a minimum amount to join the tier. If a tier is free to join then this property does not need to be specified. + * + * @param hasTierRequirement Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addHasTierRequirement(Text hasTierRequirement); + /** + * A requirement for a user to join a membership tier, for example: a CreditCard if the tier requires sign up for a credit card, A UnitPriceSpecification if the user is required to pay a (periodic) fee, or a MonetaryAmount if the user needs to spend a minimum amount to join the tier. If a tier is free to join then this property does not need to be specified. + * + * @param hasTierRequirement CreditCard value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addHasTierRequirement(CreditCard hasTierRequirement); + /** + * A requirement for a user to join a membership tier, for example: a CreditCard if the tier requires sign up for a credit card, A UnitPriceSpecification if the user is required to pay a (periodic) fee, or a MonetaryAmount if the user needs to spend a minimum amount to join the tier. If a tier is free to join then this property does not need to be specified. + * + * @param hasTierRequirement UnitPriceSpecification value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addHasTierRequirement(UnitPriceSpecification hasTierRequirement); + + /** + * The member program this tier is a part of. + * + * @return {@link MemberProgram} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getIsTierOfList(); + + /** + * The member program this tier is a part of. + * + * @return {@link MemberProgram} + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + MemberProgram getIsTierOf(); + + /** + * The member program this tier is a part of. + * + * @param isTierOf MemberProgram value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addIsTierOf(MemberProgram isTierOf); + + /** + * The number of membership points earned by the member. If necessary, the unitText can be used to express the units the points are issued in. (E.g. stars, miles, etc.) + * + * @return {@link QuantitativeValue} or {@link Number} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2085 + */ + List getMembershipPointsEarnedList(); + + /** + * The number of membership points earned by the member. If necessary, the unitText can be used to express the units the points are issued in. (E.g. stars, miles, etc.) + * + * @return {@link QuantitativeValue} or {@link Number} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2085 + */ + T getMembershipPointsEarned(); + + /** + * The number of membership points earned by the member. If necessary, the unitText can be used to express the units the points are issued in. (E.g. stars, miles, etc.) + * + * @param membershipPointsEarned QuantitativeValue value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2085 + */ + void addMembershipPointsEarned(QuantitativeValue membershipPointsEarned); + /** + * The number of membership points earned by the member. If necessary, the unitText can be used to express the units the points are issued in. (E.g. stars, miles, etc.) + * + * @param membershipPointsEarned Number value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2085 + */ + void addMembershipPointsEarned(Number membershipPointsEarned); +} diff --git a/generator/src/test/resources/data/filters/model/MenuItem.java b/generator/src/test/resources/data/filters/model/MenuItem.java new file mode 100644 index 00000000..fa67ebdb --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MenuItem.java @@ -0,0 +1,130 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Demand; +import filters.model.MenuItem; +import filters.model.MenuSection; +import filters.model.NutritionInformation; +import filters.model.Offer; +import filters.model.RestrictedDiet; +import java.util.List; + +/** + * A food or drink item listed in a menu or menu section. + * + * @see https://schema.org/MenuItem + */ +public interface MenuItem extends Intangible { + + /** + * Additional menu item(s) such as a side dish of salad or side order of fries that can be added to this menu item. Additionally it can be a menu section containing allowed add-on menu items for this menu item. + * + * @return {@link MenuSection} or {@link MenuItem} + * @see https://github.com/schemaorg/schemaorg/issues/1541 + */ + List getMenuAddOnList(); + + /** + * Additional menu item(s) such as a side dish of salad or side order of fries that can be added to this menu item. Additionally it can be a menu section containing allowed add-on menu items for this menu item. + * + * @return {@link MenuSection} or {@link MenuItem} + * @see https://github.com/schemaorg/schemaorg/issues/1541 + */ + T getMenuAddOn(); + + /** + * Additional menu item(s) such as a side dish of salad or side order of fries that can be added to this menu item. Additionally it can be a menu section containing allowed add-on menu items for this menu item. + * + * @param menuAddOn MenuSection value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1541 + */ + void addMenuAddOn(MenuSection menuAddOn); + /** + * Additional menu item(s) such as a side dish of salad or side order of fries that can be added to this menu item. Additionally it can be a menu section containing allowed add-on menu items for this menu item. + * + * @param menuAddOn MenuItem value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1541 + */ + void addMenuAddOn(MenuItem menuAddOn); + + /** + * Nutrition information about the recipe or menu item. + * + * @return {@link NutritionInformation} + */ + List getNutritionList(); + + /** + * Nutrition information about the recipe or menu item. + * + * @return {@link NutritionInformation} + */ + NutritionInformation getNutrition(); + + /** + * Nutrition information about the recipe or menu item. + * + * @param nutrition NutritionInformation value to set. + */ + void addNutrition(NutritionInformation nutrition); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @return {@link Offer} or {@link Demand} + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + List getOffersList(); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @return {@link Offer} or {@link Demand} + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + T getOffers(); + + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @param offers Offer value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addOffers(Offer offers); + /** + * An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * + * @param offers Demand value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2289 + */ + void addOffers(Demand offers); + + /** + * Indicates a dietary restriction or guideline for which this recipe or menu item is suitable, e.g. diabetic, halal etc. + * + * @return {@link RestrictedDiet} + */ + List getSuitableForDietList(); + + /** + * Indicates a dietary restriction or guideline for which this recipe or menu item is suitable, e.g. diabetic, halal etc. + * + * @return {@link RestrictedDiet} + */ + RestrictedDiet getSuitableForDiet(); + + /** + * Indicates a dietary restriction or guideline for which this recipe or menu item is suitable, e.g. diabetic, halal etc. + * + * @param suitableForDiet RestrictedDiet value to set. + */ + void addSuitableForDiet(RestrictedDiet suitableForDiet); +} diff --git a/generator/src/test/resources/data/filters/model/MenuSection.java b/generator/src/test/resources/data/filters/model/MenuSection.java new file mode 100644 index 00000000..53b3fe06 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MenuSection.java @@ -0,0 +1,60 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MenuItem; +import filters.model.MenuSection; +import java.util.List; + +/** + * A sub-grouping of food or drink items in a menu. E.g. courses (such as 'Dinner', 'Breakfast', etc.), specific type of dishes (such as 'Meat', 'Vegan', 'Drinks', etc.), or some other classification made by the menu provider. + * + * @see https://schema.org/MenuSection + */ +public interface MenuSection extends CreativeWork { + + /** + * A food or drink item contained in a menu or menu section. + * + * @return {@link MenuItem} + */ + List getHasMenuItemList(); + + /** + * A food or drink item contained in a menu or menu section. + * + * @return {@link MenuItem} + */ + MenuItem getHasMenuItem(); + + /** + * A food or drink item contained in a menu or menu section. + * + * @param hasMenuItem MenuItem value to set. + */ + void addHasMenuItem(MenuItem hasMenuItem); + + /** + * A subgrouping of the menu (by dishes, course, serving time period, etc.). + * + * @return {@link MenuSection} + */ + List getHasMenuSectionList(); + + /** + * A subgrouping of the menu (by dishes, course, serving time period, etc.). + * + * @return {@link MenuSection} + */ + MenuSection getHasMenuSection(); + + /** + * A subgrouping of the menu (by dishes, course, serving time period, etc.). + * + * @param hasMenuSection MenuSection value to set. + */ + void addHasMenuSection(MenuSection hasMenuSection); +} diff --git a/generator/src/test/resources/data/filters/model/MerchantReturnEnumeration.java b/generator/src/test/resources/data/filters/model/MerchantReturnEnumeration.java new file mode 100644 index 00000000..1494f684 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MerchantReturnEnumeration.java @@ -0,0 +1,18 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * Enumerates several kinds of product return policies. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + * @see https://schema.org/MerchantReturnEnumeration + */ +public interface MerchantReturnEnumeration extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/MerchantReturnPolicy.java b/generator/src/test/resources/data/filters/model/MerchantReturnPolicy.java new file mode 100644 index 00000000..042fe73d --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MerchantReturnPolicy.java @@ -0,0 +1,661 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Country; +import filters.model.MemberProgramTier; +import filters.model.MerchantReturnEnumeration; +import filters.model.MerchantReturnPolicySeasonalOverride; +import filters.model.MonetaryAmount; +import filters.model.OfferItemCondition; +import filters.model.PropertyValue; +import filters.model.RefundTypeEnumeration; +import filters.model.ReturnFeesEnumeration; +import filters.model.ReturnLabelSourceEnumeration; +import filters.model.ReturnMethodEnumeration; +import filters.model.datatype.Boolean; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Integer; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import filters.model.datatype.URL; +import java.util.List; + +/** + * A MerchantReturnPolicy provides information about product return policies associated with an [[Organization]], [[Product]], or [[Offer]]. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + * @see https://schema.org/MerchantReturnPolicy + */ +public interface MerchantReturnPolicy extends Intangible { + + /** + * A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

    Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. + * + * @return {@link PropertyValue} + */ + List getAdditionalPropertyList(); + + /** + * A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

    Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. + * + * @return {@link PropertyValue} + */ + PropertyValue getAdditionalProperty(); + + /** + * A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

    Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. + * + * @param additionalProperty PropertyValue value to set. + */ + void addAdditionalProperty(PropertyValue additionalProperty); + + /** + * A country where a particular merchant return policy applies to, for example the two-letter ISO 3166-1 alpha-2 country code. + * + * @return {@link Country} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3001 + */ + List getApplicableCountryList(); + + /** + * A country where a particular merchant return policy applies to, for example the two-letter ISO 3166-1 alpha-2 country code. + * + * @return {@link Country} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3001 + */ + T getApplicableCountry(); + + /** + * A country where a particular merchant return policy applies to, for example the two-letter ISO 3166-1 alpha-2 country code. + * + * @param applicableCountry Country value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3001 + */ + void addApplicableCountry(Country applicableCountry); + /** + * A country where a particular merchant return policy applies to, for example the two-letter ISO 3166-1 alpha-2 country code. + * + * @param applicableCountry Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3001 + */ + void addApplicableCountry(Text applicableCountry); + + /** + * The type of return fees if the product is returned due to customer remorse. + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getCustomerRemorseReturnFeesList(); + + /** + * The type of return fees if the product is returned due to customer remorse. + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnFeesEnumeration getCustomerRemorseReturnFees(); + + /** + * The type of return fees if the product is returned due to customer remorse. + * + * @param customerRemorseReturnFees ReturnFeesEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addCustomerRemorseReturnFees(ReturnFeesEnumeration customerRemorseReturnFees); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a product returned due to customer remorse. + * + * @return {@link ReturnLabelSourceEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getCustomerRemorseReturnLabelSourceList(); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a product returned due to customer remorse. + * + * @return {@link ReturnLabelSourceEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnLabelSourceEnumeration getCustomerRemorseReturnLabelSource(); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a product returned due to customer remorse. + * + * @param customerRemorseReturnLabelSource ReturnLabelSourceEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addCustomerRemorseReturnLabelSource(ReturnLabelSourceEnumeration customerRemorseReturnLabelSource); + + /** + * The amount of shipping costs if a product is returned due to customer remorse. Applicable when property [[customerRemorseReturnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getCustomerRemorseReturnShippingFeesAmountList(); + + /** + * The amount of shipping costs if a product is returned due to customer remorse. Applicable when property [[customerRemorseReturnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + MonetaryAmount getCustomerRemorseReturnShippingFeesAmount(); + + /** + * The amount of shipping costs if a product is returned due to customer remorse. Applicable when property [[customerRemorseReturnFees]] equals [[ReturnShippingFees]]. + * + * @param customerRemorseReturnShippingFeesAmount MonetaryAmount value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addCustomerRemorseReturnShippingFeesAmount(MonetaryAmount customerRemorseReturnShippingFeesAmount); + + /** + * Are in-store returns offered? (For more advanced return methods use the [[returnMethod]] property.) + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getInStoreReturnsOfferedList(); + + /** + * Are in-store returns offered? (For more advanced return methods use the [[returnMethod]] property.) + * + * @return {@link Boolean} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + Boolean getInStoreReturnsOffered(); + + /** + * Are in-store returns offered? (For more advanced return methods use the [[returnMethod]] property.) + * + * @param inStoreReturnsOffered Boolean value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addInStoreReturnsOffered(Boolean inStoreReturnsOffered); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @return {@link OfferItemCondition} + */ + List getItemConditionList(); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @return {@link OfferItemCondition} + */ + OfferItemCondition getItemCondition(); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @param itemCondition OfferItemCondition value to set. + */ + void addItemCondition(OfferItemCondition itemCondition); + + /** + * The type of return fees for returns of defect products. + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getItemDefectReturnFeesList(); + + /** + * The type of return fees for returns of defect products. + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnFeesEnumeration getItemDefectReturnFees(); + + /** + * The type of return fees for returns of defect products. + * + * @param itemDefectReturnFees ReturnFeesEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addItemDefectReturnFees(ReturnFeesEnumeration itemDefectReturnFees); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a defect product. + * + * @return {@link ReturnLabelSourceEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getItemDefectReturnLabelSourceList(); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a defect product. + * + * @return {@link ReturnLabelSourceEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnLabelSourceEnumeration getItemDefectReturnLabelSource(); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a defect product. + * + * @param itemDefectReturnLabelSource ReturnLabelSourceEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addItemDefectReturnLabelSource(ReturnLabelSourceEnumeration itemDefectReturnLabelSource); + + /** + * Amount of shipping costs for defect product returns. Applicable when property [[itemDefectReturnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getItemDefectReturnShippingFeesAmountList(); + + /** + * Amount of shipping costs for defect product returns. Applicable when property [[itemDefectReturnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + MonetaryAmount getItemDefectReturnShippingFeesAmount(); + + /** + * Amount of shipping costs for defect product returns. Applicable when property [[itemDefectReturnFees]] equals [[ReturnShippingFees]]. + * + * @param itemDefectReturnShippingFeesAmount MonetaryAmount value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addItemDefectReturnShippingFeesAmount(MonetaryAmount itemDefectReturnShippingFeesAmount); + + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @return {@link Date} or {@link Integer} or {@link DateTime} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getMerchantReturnDaysList(); + + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @return {@link Date} or {@link Integer} or {@link DateTime} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + T getMerchantReturnDays(); + + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @param merchantReturnDays Date value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnDays(Date merchantReturnDays); + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @param merchantReturnDays Integer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnDays(Integer merchantReturnDays); + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @param merchantReturnDays DateTime value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnDays(DateTime merchantReturnDays); + + /** + * Specifies a Web page or service by URL, for product returns. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getMerchantReturnLinkList(); + + /** + * Specifies a Web page or service by URL, for product returns. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + URL getMerchantReturnLink(); + + /** + * Specifies a Web page or service by URL, for product returns. + * + * @param merchantReturnLink URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnLink(URL merchantReturnLink); + + /** + * A refund type, from an enumerated list. + * + * @return {@link RefundTypeEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getRefundTypeList(); + + /** + * A refund type, from an enumerated list. + * + * @return {@link RefundTypeEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + RefundTypeEnumeration getRefundType(); + + /** + * A refund type, from an enumerated list. + * + * @param refundType RefundTypeEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addRefundType(RefundTypeEnumeration refundType); + + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @return {@link Number} or {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getRestockingFeeList(); + + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @return {@link Number} or {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + T getRestockingFee(); + + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @param restockingFee Number value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addRestockingFee(Number restockingFee); + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @param restockingFee MonetaryAmount value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addRestockingFee(MonetaryAmount restockingFee); + + /** + * The type of return fees for purchased products (for any return reason). + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getReturnFeesList(); + + /** + * The type of return fees for purchased products (for any return reason). + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + ReturnFeesEnumeration getReturnFees(); + + /** + * The type of return fees for purchased products (for any return reason). + * + * @param returnFees ReturnFeesEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addReturnFees(ReturnFeesEnumeration returnFees); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a product returned for any reason. + * + * @return {@link ReturnLabelSourceEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnLabelSourceList(); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a product returned for any reason. + * + * @return {@link ReturnLabelSourceEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnLabelSourceEnumeration getReturnLabelSource(); + + /** + * The method (from an enumeration) by which the customer obtains a return shipping label for a product returned for any reason. + * + * @param returnLabelSource ReturnLabelSourceEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnLabelSource(ReturnLabelSourceEnumeration returnLabelSource); + + /** + * The type of return method offered, specified from an enumeration. + * + * @return {@link ReturnMethodEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnMethodList(); + + /** + * The type of return method offered, specified from an enumeration. + * + * @return {@link ReturnMethodEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnMethodEnumeration getReturnMethod(); + + /** + * The type of return method offered, specified from an enumeration. + * + * @param returnMethod ReturnMethodEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnMethod(ReturnMethodEnumeration returnMethod); + + /** + * Specifies an applicable return policy (from an enumeration). + * + * @return {@link MerchantReturnEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getReturnPolicyCategoryList(); + + /** + * Specifies an applicable return policy (from an enumeration). + * + * @return {@link MerchantReturnEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + MerchantReturnEnumeration getReturnPolicyCategory(); + + /** + * Specifies an applicable return policy (from an enumeration). + * + * @param returnPolicyCategory MerchantReturnEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addReturnPolicyCategory(MerchantReturnEnumeration returnPolicyCategory); + + /** + * The country where the product has to be sent to for returns, for example "Ireland" using the [[name]] property of [[Country]]. You can also provide the two-letter [ISO 3166-1 alpha-2 country code](http://en.wikipedia.org/wiki/ISO_3166-1). Note that this can be different from the country where the product was originally shipped from or sent to. + * + * @return {@link Country} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnPolicyCountryList(); + + /** + * The country where the product has to be sent to for returns, for example "Ireland" using the [[name]] property of [[Country]]. You can also provide the two-letter [ISO 3166-1 alpha-2 country code](http://en.wikipedia.org/wiki/ISO_3166-1). Note that this can be different from the country where the product was originally shipped from or sent to. + * + * @return {@link Country} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + T getReturnPolicyCountry(); + + /** + * The country where the product has to be sent to for returns, for example "Ireland" using the [[name]] property of [[Country]]. You can also provide the two-letter [ISO 3166-1 alpha-2 country code](http://en.wikipedia.org/wiki/ISO_3166-1). Note that this can be different from the country where the product was originally shipped from or sent to. + * + * @param returnPolicyCountry Country value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnPolicyCountry(Country returnPolicyCountry); + /** + * The country where the product has to be sent to for returns, for example "Ireland" using the [[name]] property of [[Country]]. You can also provide the two-letter [ISO 3166-1 alpha-2 country code](http://en.wikipedia.org/wiki/ISO_3166-1). Note that this can be different from the country where the product was originally shipped from or sent to. + * + * @param returnPolicyCountry Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnPolicyCountry(Text returnPolicyCountry); + + /** + * Seasonal override of a return policy. + * + * @return {@link MerchantReturnPolicySeasonalOverride} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnPolicySeasonalOverrideList(); + + /** + * Seasonal override of a return policy. + * + * @return {@link MerchantReturnPolicySeasonalOverride} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + MerchantReturnPolicySeasonalOverride getReturnPolicySeasonalOverride(); + + /** + * Seasonal override of a return policy. + * + * @param returnPolicySeasonalOverride MerchantReturnPolicySeasonalOverride value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnPolicySeasonalOverride(MerchantReturnPolicySeasonalOverride returnPolicySeasonalOverride); + + /** + * Amount of shipping costs for product returns (for any reason). Applicable when property [[returnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnShippingFeesAmountList(); + + /** + * Amount of shipping costs for product returns (for any reason). Applicable when property [[returnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + MonetaryAmount getReturnShippingFeesAmount(); + + /** + * Amount of shipping costs for product returns (for any reason). Applicable when property [[returnFees]] equals [[ReturnShippingFees]]. + * + * @param returnShippingFeesAmount MonetaryAmount value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnShippingFeesAmount(MonetaryAmount returnShippingFeesAmount); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @return {@link MemberProgramTier} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getValidForMemberTierList(); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @return {@link MemberProgramTier} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + MemberProgramTier getValidForMemberTier(); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @param validForMemberTier MemberProgramTier value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addValidForMemberTier(MemberProgramTier validForMemberTier); +} diff --git a/generator/src/test/resources/data/filters/model/MerchantReturnPolicySeasonalOverride.java b/generator/src/test/resources/data/filters/model/MerchantReturnPolicySeasonalOverride.java new file mode 100644 index 00000000..9c23b5c3 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MerchantReturnPolicySeasonalOverride.java @@ -0,0 +1,302 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.MerchantReturnEnumeration; +import filters.model.MonetaryAmount; +import filters.model.RefundTypeEnumeration; +import filters.model.ReturnFeesEnumeration; +import filters.model.ReturnMethodEnumeration; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Integer; +import filters.model.datatype.Number; +import java.util.List; + +/** + * A seasonal override of a return policy, for example used for holidays. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + * @see https://schema.org/MerchantReturnPolicySeasonalOverride + */ +public interface MerchantReturnPolicySeasonalOverride extends Intangible { + + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + List getEndDateList(); + + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + T getEndDate(); + + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param endDate DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addEndDate(DateTime endDate); + /** + * The end date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param endDate Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addEndDate(Date endDate); + + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @return {@link Date} or {@link Integer} or {@link DateTime} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getMerchantReturnDaysList(); + + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @return {@link Date} or {@link Integer} or {@link DateTime} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + T getMerchantReturnDays(); + + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @param merchantReturnDays Date value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnDays(Date merchantReturnDays); + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @param merchantReturnDays Integer value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnDays(Integer merchantReturnDays); + /** + * Specifies either a fixed return date or the number of days (from the delivery date) that a product can be returned. Used when the [[returnPolicyCategory]] property is specified as [[MerchantReturnFiniteReturnWindow]]. + * + * @param merchantReturnDays DateTime value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addMerchantReturnDays(DateTime merchantReturnDays); + + /** + * A refund type, from an enumerated list. + * + * @return {@link RefundTypeEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getRefundTypeList(); + + /** + * A refund type, from an enumerated list. + * + * @return {@link RefundTypeEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + RefundTypeEnumeration getRefundType(); + + /** + * A refund type, from an enumerated list. + * + * @param refundType RefundTypeEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addRefundType(RefundTypeEnumeration refundType); + + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @return {@link Number} or {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getRestockingFeeList(); + + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @return {@link Number} or {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + T getRestockingFee(); + + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @param restockingFee Number value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addRestockingFee(Number restockingFee); + /** + * Use [[MonetaryAmount]] to specify a fixed restocking fee for product returns, or use [[Number]] to specify a percentage of the product price paid by the customer. + * + * @param restockingFee MonetaryAmount value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addRestockingFee(MonetaryAmount restockingFee); + + /** + * The type of return fees for purchased products (for any return reason). + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getReturnFeesList(); + + /** + * The type of return fees for purchased products (for any return reason). + * + * @return {@link ReturnFeesEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + ReturnFeesEnumeration getReturnFees(); + + /** + * The type of return fees for purchased products (for any return reason). + * + * @param returnFees ReturnFeesEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addReturnFees(ReturnFeesEnumeration returnFees); + + /** + * The type of return method offered, specified from an enumeration. + * + * @return {@link ReturnMethodEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnMethodList(); + + /** + * The type of return method offered, specified from an enumeration. + * + * @return {@link ReturnMethodEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + ReturnMethodEnumeration getReturnMethod(); + + /** + * The type of return method offered, specified from an enumeration. + * + * @param returnMethod ReturnMethodEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnMethod(ReturnMethodEnumeration returnMethod); + + /** + * Specifies an applicable return policy (from an enumeration). + * + * @return {@link MerchantReturnEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getReturnPolicyCategoryList(); + + /** + * Specifies an applicable return policy (from an enumeration). + * + * @return {@link MerchantReturnEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + MerchantReturnEnumeration getReturnPolicyCategory(); + + /** + * Specifies an applicable return policy (from an enumeration). + * + * @param returnPolicyCategory MerchantReturnEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addReturnPolicyCategory(MerchantReturnEnumeration returnPolicyCategory); + + /** + * Amount of shipping costs for product returns (for any reason). Applicable when property [[returnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + List getReturnShippingFeesAmountList(); + + /** + * Amount of shipping costs for product returns (for any reason). Applicable when property [[returnFees]] equals [[ReturnShippingFees]]. + * + * @return {@link MonetaryAmount} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + MonetaryAmount getReturnShippingFeesAmount(); + + /** + * Amount of shipping costs for product returns (for any reason). Applicable when property [[returnFees]] equals [[ReturnShippingFees]]. + * + * @param returnShippingFeesAmount MonetaryAmount value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2880 + */ + void addReturnShippingFeesAmount(MonetaryAmount returnShippingFeesAmount); + + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + List getStartDateList(); + + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @return {@link DateTime} or {@link Date} + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + T getStartDate(); + + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param startDate DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addStartDate(DateTime startDate); + /** + * The start date and time of the item (in [ISO 8601 date format](http://en.wikipedia.org/wiki/ISO_8601)). + * + * @param startDate Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2486 + */ + void addStartDate(Date startDate); +} diff --git a/generator/src/test/resources/data/filters/model/MonetaryAmount.java b/generator/src/test/resources/data/filters/model/MonetaryAmount.java new file mode 100644 index 00000000..e604028a --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MonetaryAmount.java @@ -0,0 +1,202 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.StructuredValue; +import filters.model.datatype.Boolean; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A monetary value or range. This type can be used to describe an amount of money such as $50 USD, or a range as in describing a bank account being suitable for a balance between £1,000 and £1,000,000 GBP, or the value of a salary, etc. It is recommended to use [[PriceSpecification]] Types to describe the price of an Offer, Invoice, etc. + * + * @see https://schema.org/docs/collab/FIBO + * @see https://schema.org/MonetaryAmount + */ +public interface MonetaryAmount extends StructuredValue { + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + List getCurrencyList(); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + Text getCurrency(); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @param currency Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + void addCurrency(Text currency); + + /** + * The upper value of some characteristic or property. + * + * @return {@link Number} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getMaxValueList(); + + /** + * The upper value of some characteristic or property. + * + * @return {@link Number} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Number getMaxValue(); + + /** + * The upper value of some characteristic or property. + * + * @param maxValue Number value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addMaxValue(Number maxValue); + + /** + * The lower value of some characteristic or property. + * + * @return {@link Number} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getMinValueList(); + + /** + * The lower value of some characteristic or property. + * + * @return {@link Number} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Number getMinValue(); + + /** + * The lower value of some characteristic or property. + * + * @param minValue Number value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addMinValue(Number minValue); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidFromList(); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidFrom(); + + /** + * The date when the item becomes valid. + * + * @param validFrom DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(DateTime validFrom); + /** + * The date when the item becomes valid. + * + * @param validFrom Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(Date validFrom); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidThroughList(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidThrough(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(DateTime validThrough); + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(Date validThrough); + + /** + * The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.

    * For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.
    * For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @return {@link Boolean} or {@link Number} or {@link Text} or {@link StructuredValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValueList(); + + /** + * The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.

    * For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.
    * For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @return {@link Boolean} or {@link Number} or {@link Text} or {@link StructuredValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValue(); + + /** + * The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.

    * For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.
    * For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param value Boolean value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValue(Boolean value); + /** + * The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.

    * For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.
    * For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param value Number value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValue(Number value); + /** + * The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.

    * For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.
    * For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param value Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValue(Text value); + /** + * The value of a [[QuantitativeValue]] (including [[Observation]]) or property value node.

    * For [[QuantitativeValue]] and [[MonetaryAmount]], the recommended type for values is 'Number'.
    * For [[PropertyValue]], it can be 'Text', 'Number', 'Boolean', or 'StructuredValue'.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator. + * + * @param value StructuredValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValue(StructuredValue value); +} diff --git a/generator/src/test/resources/data/filters/model/MonetaryAmountDistribution.java b/generator/src/test/resources/data/filters/model/MonetaryAmountDistribution.java new file mode 100644 index 00000000..e60b3932 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/MonetaryAmountDistribution.java @@ -0,0 +1,42 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.datatype.Text; +import java.util.List; + +/** + * A statistical distribution of monetary amounts. + * + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://schema.org/MonetaryAmountDistribution + */ +public interface MonetaryAmountDistribution extends QuantitativeValueDistribution { + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + List getCurrencyList(); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + Text getCurrency(); + + /** + * The currency in which the monetary amount is expressed.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @param currency Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1253 + */ + void addCurrency(Text currency); +} diff --git a/generator/src/test/resources/data/filters/model/NewsArticle.java b/generator/src/test/resources/data/filters/model/NewsArticle.java new file mode 100644 index 00000000..a116ecad --- /dev/null +++ b/generator/src/test/resources/data/filters/model/NewsArticle.java @@ -0,0 +1,141 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.datatype.Text; +import java.util.List; + +/** + * A NewsArticle is an article whose content reports news, or provides background context and supporting materials for understanding the news. + * + * A more detailed overview of [schema.org News markup](/docs/news.html) is also available. + * + * @see https://schema.org/docs/collab/rNews + * @see https://schema.org/docs/collab/TP + * @see https://schema.org/NewsArticle + */ +public interface NewsArticle extends Article { + + /** + * A [dateline](https://en.wikipedia.org/wiki/Dateline) is a brief piece of text included in news articles that describes where and when the story was written or filed though the date is often omitted. Sometimes only a placename is provided. + * + * Structured representations of dateline-related information can also be expressed more explicitly using [[locationCreated]] (which represents where a work was created, e.g. where a news report was written). For location depicted or described in the content, use [[contentLocation]]. + * + * Dateline summaries are oriented more towards human readers than towards automated processing, and can vary substantially. Some examples: "BEIRUT, Lebanon, June 2.", "Paris, France", "December 19, 2017 11:43AM Reporting from Washington", "Beijing/Moscow", "QUEZON CITY, Philippines". + * + * + * @return {@link Text} + */ + List getDatelineList(); + + /** + * A [dateline](https://en.wikipedia.org/wiki/Dateline) is a brief piece of text included in news articles that describes where and when the story was written or filed though the date is often omitted. Sometimes only a placename is provided. + * + * Structured representations of dateline-related information can also be expressed more explicitly using [[locationCreated]] (which represents where a work was created, e.g. where a news report was written). For location depicted or described in the content, use [[contentLocation]]. + * + * Dateline summaries are oriented more towards human readers than towards automated processing, and can vary substantially. Some examples: "BEIRUT, Lebanon, June 2.", "Paris, France", "December 19, 2017 11:43AM Reporting from Washington", "Beijing/Moscow", "QUEZON CITY, Philippines". + * + * + * @return {@link Text} + */ + Text getDateline(); + + /** + * A [dateline](https://en.wikipedia.org/wiki/Dateline) is a brief piece of text included in news articles that describes where and when the story was written or filed though the date is often omitted. Sometimes only a placename is provided. + * + * Structured representations of dateline-related information can also be expressed more explicitly using [[locationCreated]] (which represents where a work was created, e.g. where a news report was written). For location depicted or described in the content, use [[contentLocation]]. + * + * Dateline summaries are oriented more towards human readers than towards automated processing, and can vary substantially. Some examples: "BEIRUT, Lebanon, June 2.", "Paris, France", "December 19, 2017 11:43AM Reporting from Washington", "Beijing/Moscow", "QUEZON CITY, Philippines". + * + * + * @param dateline Text value to set. + */ + void addDateline(Text dateline); + + /** + * The number of the column in which the NewsArticle appears in the print edition. + * + * @return {@link Text} + */ + List getPrintColumnList(); + + /** + * The number of the column in which the NewsArticle appears in the print edition. + * + * @return {@link Text} + */ + Text getPrintColumn(); + + /** + * The number of the column in which the NewsArticle appears in the print edition. + * + * @param printColumn Text value to set. + */ + void addPrintColumn(Text printColumn); + + /** + * The edition of the print product in which the NewsArticle appears. + * + * @return {@link Text} + */ + List getPrintEditionList(); + + /** + * The edition of the print product in which the NewsArticle appears. + * + * @return {@link Text} + */ + Text getPrintEdition(); + + /** + * The edition of the print product in which the NewsArticle appears. + * + * @param printEdition Text value to set. + */ + void addPrintEdition(Text printEdition); + + /** + * If this NewsArticle appears in print, this field indicates the name of the page on which the article is found. Please note that this field is intended for the exact page name (e.g. A5, B18). + * + * @return {@link Text} + */ + List getPrintPageList(); + + /** + * If this NewsArticle appears in print, this field indicates the name of the page on which the article is found. Please note that this field is intended for the exact page name (e.g. A5, B18). + * + * @return {@link Text} + */ + Text getPrintPage(); + + /** + * If this NewsArticle appears in print, this field indicates the name of the page on which the article is found. Please note that this field is intended for the exact page name (e.g. A5, B18). + * + * @param printPage Text value to set. + */ + void addPrintPage(Text printPage); + + /** + * If this NewsArticle appears in print, this field indicates the print section in which the article appeared. + * + * @return {@link Text} + */ + List getPrintSectionList(); + + /** + * If this NewsArticle appears in print, this field indicates the print section in which the article appeared. + * + * @return {@link Text} + */ + Text getPrintSection(); + + /** + * If this NewsArticle appears in print, this field indicates the print section in which the article appeared. + * + * @param printSection Text value to set. + */ + void addPrintSection(Text printSection); +} diff --git a/generator/src/test/resources/data/filters/model/NutritionInformation.java b/generator/src/test/resources/data/filters/model/NutritionInformation.java new file mode 100644 index 00000000..723077c3 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/NutritionInformation.java @@ -0,0 +1,271 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.Energy; +import filters.model.Mass; +import filters.model.datatype.Text; +import java.util.List; + +/** + * Nutritional information about the recipe. + * + * @see https://schema.org/NutritionInformation + */ +public interface NutritionInformation extends StructuredValue { + + /** + * The number of calories. + * + * @return {@link Energy} + */ + List getCaloriesList(); + + /** + * The number of calories. + * + * @return {@link Energy} + */ + Energy getCalories(); + + /** + * The number of calories. + * + * @param calories Energy value to set. + */ + void addCalories(Energy calories); + + /** + * The number of grams of carbohydrates. + * + * @return {@link Mass} + */ + List getCarbohydrateContentList(); + + /** + * The number of grams of carbohydrates. + * + * @return {@link Mass} + */ + Mass getCarbohydrateContent(); + + /** + * The number of grams of carbohydrates. + * + * @param carbohydrateContent Mass value to set. + */ + void addCarbohydrateContent(Mass carbohydrateContent); + + /** + * The number of milligrams of cholesterol. + * + * @return {@link Mass} + */ + List getCholesterolContentList(); + + /** + * The number of milligrams of cholesterol. + * + * @return {@link Mass} + */ + Mass getCholesterolContent(); + + /** + * The number of milligrams of cholesterol. + * + * @param cholesterolContent Mass value to set. + */ + void addCholesterolContent(Mass cholesterolContent); + + /** + * The number of grams of fat. + * + * @return {@link Mass} + */ + List getFatContentList(); + + /** + * The number of grams of fat. + * + * @return {@link Mass} + */ + Mass getFatContent(); + + /** + * The number of grams of fat. + * + * @param fatContent Mass value to set. + */ + void addFatContent(Mass fatContent); + + /** + * The number of grams of fiber. + * + * @return {@link Mass} + */ + List getFiberContentList(); + + /** + * The number of grams of fiber. + * + * @return {@link Mass} + */ + Mass getFiberContent(); + + /** + * The number of grams of fiber. + * + * @param fiberContent Mass value to set. + */ + void addFiberContent(Mass fiberContent); + + /** + * The number of grams of protein. + * + * @return {@link Mass} + */ + List getProteinContentList(); + + /** + * The number of grams of protein. + * + * @return {@link Mass} + */ + Mass getProteinContent(); + + /** + * The number of grams of protein. + * + * @param proteinContent Mass value to set. + */ + void addProteinContent(Mass proteinContent); + + /** + * The number of grams of saturated fat. + * + * @return {@link Mass} + */ + List getSaturatedFatContentList(); + + /** + * The number of grams of saturated fat. + * + * @return {@link Mass} + */ + Mass getSaturatedFatContent(); + + /** + * The number of grams of saturated fat. + * + * @param saturatedFatContent Mass value to set. + */ + void addSaturatedFatContent(Mass saturatedFatContent); + + /** + * The serving size, in terms of the number of volume or mass. + * + * @return {@link Text} + */ + List getServingSizeList(); + + /** + * The serving size, in terms of the number of volume or mass. + * + * @return {@link Text} + */ + Text getServingSize(); + + /** + * The serving size, in terms of the number of volume or mass. + * + * @param servingSize Text value to set. + */ + void addServingSize(Text servingSize); + + /** + * The number of milligrams of sodium. + * + * @return {@link Mass} + */ + List getSodiumContentList(); + + /** + * The number of milligrams of sodium. + * + * @return {@link Mass} + */ + Mass getSodiumContent(); + + /** + * The number of milligrams of sodium. + * + * @param sodiumContent Mass value to set. + */ + void addSodiumContent(Mass sodiumContent); + + /** + * The number of grams of sugar. + * + * @return {@link Mass} + */ + List getSugarContentList(); + + /** + * The number of grams of sugar. + * + * @return {@link Mass} + */ + Mass getSugarContent(); + + /** + * The number of grams of sugar. + * + * @param sugarContent Mass value to set. + */ + void addSugarContent(Mass sugarContent); + + /** + * The number of grams of trans fat. + * + * @return {@link Mass} + */ + List getTransFatContentList(); + + /** + * The number of grams of trans fat. + * + * @return {@link Mass} + */ + Mass getTransFatContent(); + + /** + * The number of grams of trans fat. + * + * @param transFatContent Mass value to set. + */ + void addTransFatContent(Mass transFatContent); + + /** + * The number of grams of unsaturated fat. + * + * @return {@link Mass} + */ + List getUnsaturatedFatContentList(); + + /** + * The number of grams of unsaturated fat. + * + * @return {@link Mass} + */ + Mass getUnsaturatedFatContent(); + + /** + * The number of grams of unsaturated fat. + * + * @param unsaturatedFatContent Mass value to set. + */ + void addUnsaturatedFatContent(Mass unsaturatedFatContent); +} diff --git a/generator/src/test/resources/data/filters/model/Occupation.java b/generator/src/test/resources/data/filters/model/Occupation.java new file mode 100644 index 00000000..b345a746 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Occupation.java @@ -0,0 +1,311 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.CategoryCode; +import filters.model.DefinedTerm; +import filters.model.EducationalOccupationalCredential; +import filters.model.MonetaryAmount; +import filters.model.MonetaryAmountDistribution; +import filters.model.OccupationalExperienceRequirements; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import java.util.List; + +/** + * A profession, may involve prolonged training and/or a formal qualification. + * + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://schema.org/Occupation + */ +public interface Occupation extends Intangible { + + /** + * Educational background needed for the position or Occupation. + * + * @return {@link Text} or {@link EducationalOccupationalCredential} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getEducationRequirementsList(); + + /** + * Educational background needed for the position or Occupation. + * + * @return {@link Text} or {@link EducationalOccupationalCredential} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + T getEducationRequirements(); + + /** + * Educational background needed for the position or Occupation. + * + * @param educationRequirements Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addEducationRequirements(Text educationRequirements); + /** + * Educational background needed for the position or Occupation. + * + * @param educationRequirements EducationalOccupationalCredential value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addEducationRequirements(EducationalOccupationalCredential educationRequirements); + + /** + * An estimated salary for a job posting or occupation, based on a variety of variables including, but not limited to industry, job title, and location. Estimated salaries are often computed by outside organizations rather than the hiring organization, who may not have committed to the estimated value. + * + * @return {@link Number} or {@link MonetaryAmount} or {@link MonetaryAmountDistribution} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getEstimatedSalaryList(); + + /** + * An estimated salary for a job posting or occupation, based on a variety of variables including, but not limited to industry, job title, and location. Estimated salaries are often computed by outside organizations rather than the hiring organization, who may not have committed to the estimated value. + * + * @return {@link Number} or {@link MonetaryAmount} or {@link MonetaryAmountDistribution} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + T getEstimatedSalary(); + + /** + * An estimated salary for a job posting or occupation, based on a variety of variables including, but not limited to industry, job title, and location. Estimated salaries are often computed by outside organizations rather than the hiring organization, who may not have committed to the estimated value. + * + * @param estimatedSalary Number value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addEstimatedSalary(Number estimatedSalary); + /** + * An estimated salary for a job posting or occupation, based on a variety of variables including, but not limited to industry, job title, and location. Estimated salaries are often computed by outside organizations rather than the hiring organization, who may not have committed to the estimated value. + * + * @param estimatedSalary MonetaryAmount value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addEstimatedSalary(MonetaryAmount estimatedSalary); + /** + * An estimated salary for a job posting or occupation, based on a variety of variables including, but not limited to industry, job title, and location. Estimated salaries are often computed by outside organizations rather than the hiring organization, who may not have committed to the estimated value. + * + * @param estimatedSalary MonetaryAmountDistribution value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addEstimatedSalary(MonetaryAmountDistribution estimatedSalary); + + /** + * Description of skills and experience needed for the position or Occupation. + * + * @return {@link Text} or {@link OccupationalExperienceRequirements} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getExperienceRequirementsList(); + + /** + * Description of skills and experience needed for the position or Occupation. + * + * @return {@link Text} or {@link OccupationalExperienceRequirements} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + T getExperienceRequirements(); + + /** + * Description of skills and experience needed for the position or Occupation. + * + * @param experienceRequirements Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addExperienceRequirements(Text experienceRequirements); + /** + * Description of skills and experience needed for the position or Occupation. + * + * @param experienceRequirements OccupationalExperienceRequirements value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addExperienceRequirements(OccupationalExperienceRequirements experienceRequirements); + + /** + * The region/country for which this occupational description is appropriate. Note that educational requirements and qualifications can vary between jurisdictions. + * + * @return {@link AdministrativeArea} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getOccupationLocationList(); + + /** + * The region/country for which this occupational description is appropriate. Note that educational requirements and qualifications can vary between jurisdictions. + * + * @return {@link AdministrativeArea} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + AdministrativeArea getOccupationLocation(); + + /** + * The region/country for which this occupational description is appropriate. Note that educational requirements and qualifications can vary between jurisdictions. + * + * @param occupationLocation AdministrativeArea value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addOccupationLocation(AdministrativeArea occupationLocation); + + /** + * A category describing the job, preferably using a term from a taxonomy such as [BLS O*NET-SOC](http://www.onetcenter.org/taxonomy.html), [ISCO-08](https://www.ilo.org/public/english/bureau/stat/isco/isco08/) or similar, with the property repeated for each applicable value. Ideally the taxonomy should be identified, and both the textual label and formal code for the category should be provided.
    + * Note: for historical reasons, any textual label and formal code provided as a literal may be assumed to be from O*NET-SOC. + * + * @return {@link Text} or {@link CategoryCode} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2289 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/2192 + * @see https://github.com/schemaorg/schemaorg/issues/2460 + * @see https://github.com/schemaorg/schemaorg/issues/3420 + */ + List getOccupationalCategoryList(); + + /** + * A category describing the job, preferably using a term from a taxonomy such as [BLS O*NET-SOC](http://www.onetcenter.org/taxonomy.html), [ISCO-08](https://www.ilo.org/public/english/bureau/stat/isco/isco08/) or similar, with the property repeated for each applicable value. Ideally the taxonomy should be identified, and both the textual label and formal code for the category should be provided.
    + * Note: for historical reasons, any textual label and formal code provided as a literal may be assumed to be from O*NET-SOC. + * + * @return {@link Text} or {@link CategoryCode} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2289 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/2192 + * @see https://github.com/schemaorg/schemaorg/issues/2460 + * @see https://github.com/schemaorg/schemaorg/issues/3420 + */ + T getOccupationalCategory(); + + /** + * A category describing the job, preferably using a term from a taxonomy such as [BLS O*NET-SOC](http://www.onetcenter.org/taxonomy.html), [ISCO-08](https://www.ilo.org/public/english/bureau/stat/isco/isco08/) or similar, with the property repeated for each applicable value. Ideally the taxonomy should be identified, and both the textual label and formal code for the category should be provided.
    + * Note: for historical reasons, any textual label and formal code provided as a literal may be assumed to be from O*NET-SOC. + * + * @param occupationalCategory Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2289 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/2192 + * @see https://github.com/schemaorg/schemaorg/issues/2460 + * @see https://github.com/schemaorg/schemaorg/issues/3420 + */ + void addOccupationalCategory(Text occupationalCategory); + /** + * A category describing the job, preferably using a term from a taxonomy such as [BLS O*NET-SOC](http://www.onetcenter.org/taxonomy.html), [ISCO-08](https://www.ilo.org/public/english/bureau/stat/isco/isco08/) or similar, with the property repeated for each applicable value. Ideally the taxonomy should be identified, and both the textual label and formal code for the category should be provided.
    + * Note: for historical reasons, any textual label and formal code provided as a literal may be assumed to be from O*NET-SOC. + * + * @param occupationalCategory CategoryCode value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2289 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + * @see https://github.com/schemaorg/schemaorg/issues/2192 + * @see https://github.com/schemaorg/schemaorg/issues/2460 + * @see https://github.com/schemaorg/schemaorg/issues/3420 + */ + void addOccupationalCategory(CategoryCode occupationalCategory); + + /** + * Specific qualifications required for this role or Occupation. + * + * @return {@link EducationalOccupationalCredential} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getQualificationsList(); + + /** + * Specific qualifications required for this role or Occupation. + * + * @return {@link EducationalOccupationalCredential} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + T getQualifications(); + + /** + * Specific qualifications required for this role or Occupation. + * + * @param qualifications EducationalOccupationalCredential value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addQualifications(EducationalOccupationalCredential qualifications); + /** + * Specific qualifications required for this role or Occupation. + * + * @param qualifications Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/1779 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addQualifications(Text qualifications); + + /** + * Responsibilities associated with this role or Occupation. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getResponsibilitiesList(); + + /** + * Responsibilities associated with this role or Occupation. + * + * @return {@link Text} + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + Text getResponsibilities(); + + /** + * Responsibilities associated with this role or Occupation. + * + * @param responsibilities Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addResponsibilities(Text responsibilities); + + /** + * A statement of knowledge, skill, ability, task or any other assertion expressing a competency that is either claimed by a person, an organization or desired or required to fulfill a role or to work in an occupation. + * + * @return {@link Text} or {@link DefinedTerm} + * @see https://github.com/schemaorg/schemaorg/issues/2322 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + List getSkillsList(); + + /** + * A statement of knowledge, skill, ability, task or any other assertion expressing a competency that is either claimed by a person, an organization or desired or required to fulfill a role or to work in an occupation. + * + * @return {@link Text} or {@link DefinedTerm} + * @see https://github.com/schemaorg/schemaorg/issues/2322 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + T getSkills(); + + /** + * A statement of knowledge, skill, ability, task or any other assertion expressing a competency that is either claimed by a person, an organization or desired or required to fulfill a role or to work in an occupation. + * + * @param skills Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2322 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addSkills(Text skills); + /** + * A statement of knowledge, skill, ability, task or any other assertion expressing a competency that is either claimed by a person, an organization or desired or required to fulfill a role or to work in an occupation. + * + * @param skills DefinedTerm value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2322 + * @see https://github.com/schemaorg/schemaorg/issues/1698 + */ + void addSkills(DefinedTerm skills); +} diff --git a/generator/src/test/resources/data/filters/model/OccupationalExperienceRequirements.java b/generator/src/test/resources/data/filters/model/OccupationalExperienceRequirements.java new file mode 100644 index 00000000..885b9210 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/OccupationalExperienceRequirements.java @@ -0,0 +1,46 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.datatype.Number; +import java.util.List; + +/** + * Indicates employment-related experience requirements, e.g. [[monthsOfExperience]]. + * + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2681 + * @see https://schema.org/OccupationalExperienceRequirements + */ +public interface OccupationalExperienceRequirements extends Intangible { + + /** + * Indicates the minimal number of months of experience required for a position. + * + * @return {@link Number} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2681 + */ + List getMonthsOfExperienceList(); + + /** + * Indicates the minimal number of months of experience required for a position. + * + * @return {@link Number} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2681 + */ + Number getMonthsOfExperience(); + + /** + * Indicates the minimal number of months of experience required for a position. + * + * @param monthsOfExperience Number value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2681 + */ + void addMonthsOfExperience(Number monthsOfExperience); +} diff --git a/generator/src/test/resources/data/filters/model/Offer.java b/generator/src/test/resources/data/filters/model/Offer.java new file mode 100644 index 00000000..91ad6297 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/Offer.java @@ -0,0 +1,1646 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.AdministrativeArea; +import filters.model.AdultOrientedEnumeration; +import filters.model.AggregateOffer; +import filters.model.AggregateRating; +import filters.model.BusinessEntityType; +import filters.model.BusinessFunction; +import filters.model.CategoryCode; +import filters.model.CreativeWork; +import filters.model.DeliveryMethod; +import filters.model.Duration; +import filters.model.Event; +import filters.model.GeoShape; +import filters.model.ItemAvailability; +import filters.model.LoanOrCredit; +import filters.model.MemberProgramTier; +import filters.model.MenuItem; +import filters.model.MerchantReturnPolicy; +import filters.model.Offer; +import filters.model.OfferItemCondition; +import filters.model.OfferShippingDetails; +import filters.model.Organization; +import filters.model.PaymentMethod; +import filters.model.Person; +import filters.model.PhysicalActivityCategory; +import filters.model.Place; +import filters.model.PriceSpecification; +import filters.model.Product; +import filters.model.PropertyValue; +import filters.model.QuantitativeValue; +import filters.model.Review; +import filters.model.Service; +import filters.model.Thing; +import filters.model.Trip; +import filters.model.TypeAndQuantityNode; +import filters.model.WarrantyPromise; +import filters.model.datatype.Boolean; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Number; +import filters.model.datatype.Text; +import filters.model.datatype.Time; +import filters.model.datatype.URL; +import java.util.List; + +/** + * An offer to transfer some rights to an item or to provide a service — for example, an offer to sell tickets to an event, to rent the DVD of a movie, to stream a TV show over the internet, to repair a motorcycle, or to loan a book.

    Note: As the [[businessFunction]] property, which identifies the form of offer (e.g. sell, lease, repair, dispose), defaults to http://purl.org/goodrelations/v1#Sell; an Offer without a defined businessFunction value can be assumed to be an offer to sell.

    For [GTIN](http://www.gs1.org/barcodes/technical/idkeys/gtin)-related fields, see [Check Digit calculator](http://www.gs1.org/barcodes/support/check_digit_calculator) and [validation guide](http://www.gs1us.org/resources/standards/gtin-validation-guide) from [GS1](http://www.gs1.org/). + * + * @see https://schema.org/docs/collab/GoodRelationsTerms + * @see https://schema.org/Offer + */ +public interface Offer extends Intangible { + + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @return {@link Text} or {@link LoanOrCredit} or {@link PaymentMethod} + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAcceptedPaymentMethodList(); + + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @return {@link Text} or {@link LoanOrCredit} or {@link PaymentMethod} + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getAcceptedPaymentMethod(); + + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @param acceptedPaymentMethod Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAcceptedPaymentMethod(Text acceptedPaymentMethod); + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @param acceptedPaymentMethod LoanOrCredit value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAcceptedPaymentMethod(LoanOrCredit acceptedPaymentMethod); + /** + * The payment method(s) that are accepted in general by an organization, or for some specific demand or offer. + * + * @param acceptedPaymentMethod PaymentMethod value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3537 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAcceptedPaymentMethod(PaymentMethod acceptedPaymentMethod); + + /** + * An additional offer that can only be obtained in combination with the first base offer (e.g. supplements and extensions that are available for a surcharge). + * + * @return {@link Offer} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAddOnList(); + + /** + * An additional offer that can only be obtained in combination with the first base offer (e.g. supplements and extensions that are available for a surcharge). + * + * @return {@link Offer} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Offer getAddOn(); + + /** + * An additional offer that can only be obtained in combination with the first base offer (e.g. supplements and extensions that are available for a surcharge). + * + * @param addOn Offer value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAddOn(Offer addOn); + + /** + * A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

    Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. + * + * @return {@link PropertyValue} + */ + List getAdditionalPropertyList(); + + /** + * A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

    Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. + * + * @return {@link PropertyValue} + */ + PropertyValue getAdditionalProperty(); + + /** + * A property-value pair representing an additional characteristic of the entity, e.g. a product feature or another characteristic for which there is no matching property in schema.org.

    Note: Publishers should be aware that applications designed to use specific schema.org properties (e.g. https://schema.org/width, https://schema.org/color, https://schema.org/gtin13, ...) will typically expect such data to be provided using those properties, rather than using the generic property/value mechanism. + * + * @param additionalProperty PropertyValue value to set. + */ + void addAdditionalProperty(PropertyValue additionalProperty); + + /** + * The amount of time that is required between accepting the offer and the actual usage of the resource or service. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAdvanceBookingRequirementList(); + + /** + * The amount of time that is required between accepting the offer and the actual usage of the resource or service. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getAdvanceBookingRequirement(); + + /** + * The amount of time that is required between accepting the offer and the actual usage of the resource or service. + * + * @param advanceBookingRequirement QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAdvanceBookingRequirement(QuantitativeValue advanceBookingRequirement); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @return {@link AggregateRating} + */ + List getAggregateRatingList(); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @return {@link AggregateRating} + */ + AggregateRating getAggregateRating(); + + /** + * The overall rating, based on a collection of reviews or ratings, of the item. + * + * @param aggregateRating AggregateRating value to set. + */ + void addAggregateRating(AggregateRating aggregateRating); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + List getAreaServedList(); + + /** + * The geographic area where a service or offered item is provided. + * + * @return {@link Place} or {@link AdministrativeArea} or {@link GeoShape} or {@link Text} + */ + T getAreaServed(); + + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Place value to set. + */ + void addAreaServed(Place areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed AdministrativeArea value to set. + */ + void addAreaServed(AdministrativeArea areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed GeoShape value to set. + */ + void addAreaServed(GeoShape areaServed); + /** + * The geographic area where a service or offered item is provided. + * + * @param areaServed Text value to set. + */ + void addAreaServed(Text areaServed); + + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getAsinList(); + + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @return {@link URL} or {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + T getAsin(); + + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @param asin URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addAsin(URL asin); + /** + * An Amazon Standard Identification Number (ASIN) is a 10-character alphanumeric unique identifier assigned by Amazon.com and its partners for product identification within the Amazon organization (summary from [Wikipedia](https://en.wikipedia.org/wiki/Amazon_Standard_Identification_Number)'s article). + * + * Note also that this is a definition for how to include ASINs in Schema.org data, and not a definition of ASINs in general - see documentation from Amazon for authoritative details. + * ASINs are most commonly encoded as text strings, but the [asin] property supports URL/URI as potential values too. + * + * @param asin Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addAsin(Text asin); + + /** + * The availability of this item—for example In stock, Out of stock, Pre-order, etc. + * + * @return {@link ItemAvailability} + */ + List getAvailabilityList(); + + /** + * The availability of this item—for example In stock, Out of stock, Pre-order, etc. + * + * @return {@link ItemAvailability} + */ + ItemAvailability getAvailability(); + + /** + * The availability of this item—for example In stock, Out of stock, Pre-order, etc. + * + * @param availability ItemAvailability value to set. + */ + void addAvailability(ItemAvailability availability); + + /** + * The end of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailabilityEndsList(); + + /** + * The end of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getAvailabilityEnds(); + + /** + * The end of the availability of the product or service included in the offer. + * + * @param availabilityEnds DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityEnds(DateTime availabilityEnds); + /** + * The end of the availability of the product or service included in the offer. + * + * @param availabilityEnds Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityEnds(Date availabilityEnds); + /** + * The end of the availability of the product or service included in the offer. + * + * @param availabilityEnds Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityEnds(Time availabilityEnds); + + /** + * The beginning of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailabilityStartsList(); + + /** + * The beginning of the availability of the product or service included in the offer. + * + * @return {@link DateTime} or {@link Date} or {@link Time} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getAvailabilityStarts(); + + /** + * The beginning of the availability of the product or service included in the offer. + * + * @param availabilityStarts DateTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityStarts(DateTime availabilityStarts); + /** + * The beginning of the availability of the product or service included in the offer. + * + * @param availabilityStarts Date value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityStarts(Date availabilityStarts); + /** + * The beginning of the availability of the product or service included in the offer. + * + * @param availabilityStarts Time value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailabilityStarts(Time availabilityStarts); + + /** + * The place(s) from which the offer can be obtained (e.g. store locations). + * + * @return {@link Place} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailableAtOrFromList(); + + /** + * The place(s) from which the offer can be obtained (e.g. store locations). + * + * @return {@link Place} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Place getAvailableAtOrFrom(); + + /** + * The place(s) from which the offer can be obtained (e.g. store locations). + * + * @param availableAtOrFrom Place value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailableAtOrFrom(Place availableAtOrFrom); + + /** + * The delivery method(s) available for this offer. + * + * @return {@link DeliveryMethod} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getAvailableDeliveryMethodList(); + + /** + * The delivery method(s) available for this offer. + * + * @return {@link DeliveryMethod} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + DeliveryMethod getAvailableDeliveryMethod(); + + /** + * The delivery method(s) available for this offer. + * + * @param availableDeliveryMethod DeliveryMethod value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addAvailableDeliveryMethod(DeliveryMethod availableDeliveryMethod); + + /** + * The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. + * + * @return {@link BusinessFunction} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getBusinessFunctionList(); + + /** + * The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. + * + * @return {@link BusinessFunction} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + BusinessFunction getBusinessFunction(); + + /** + * The business function (e.g. sell, lease, repair, dispose) of the offer or component of a bundle (TypeAndQuantityNode). The default is http://purl.org/goodrelations/v1#Sell. + * + * @param businessFunction BusinessFunction value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addBusinessFunction(BusinessFunction businessFunction); + + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @return {@link Text} or {@link PhysicalActivityCategory} or {@link CategoryCode} or {@link Thing} or {@link URL} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + List getCategoryList(); + + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @return {@link Text} or {@link PhysicalActivityCategory} or {@link CategoryCode} or {@link Thing} or {@link URL} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + T getCategory(); + + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @param category Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + void addCategory(Text category); + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @param category PhysicalActivityCategory value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + void addCategory(PhysicalActivityCategory category); + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @param category CategoryCode value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + void addCategory(CategoryCode category); + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @param category Thing value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + void addCategory(Thing category); + /** + * A category for the item. Greater signs or slashes can be used to informally indicate a category hierarchy. + * + * @param category URL value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://github.com/schemaorg/schemaorg/issues/2490 + */ + void addCategory(URL category); + + /** + * A URL template (RFC 6570) for a checkout page for an offer. This approach allows merchants to specify a URL for online checkout of the offered product, by interpolating parameters such as the logged in user ID, product ID, quantity, discount code etc. Parameter naming and standardization are not specified here. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3135 + */ + List getCheckoutPageURLTemplateList(); + + /** + * A URL template (RFC 6570) for a checkout page for an offer. This approach allows merchants to specify a URL for online checkout of the offered product, by interpolating parameters such as the logged in user ID, product ID, quantity, discount code etc. Parameter naming and standardization are not specified here. + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3135 + */ + Text getCheckoutPageURLTemplate(); + + /** + * A URL template (RFC 6570) for a checkout page for an offer. This approach allows merchants to specify a URL for online checkout of the offered product, by interpolating parameters such as the logged in user ID, product ID, quantity, discount code etc. Parameter naming and standardization are not specified here. + * + * @param checkoutPageURLTemplate Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3135 + */ + void addCheckoutPageURLTemplate(Text checkoutPageURLTemplate); + + /** + * The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getDeliveryLeadTimeList(); + + /** + * The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getDeliveryLeadTime(); + + /** + * The typical delay between the receipt of the order and the goods either leaving the warehouse or being prepared for pickup, in case the delivery method is on site pickup. + * + * @param deliveryLeadTime QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addDeliveryLeadTime(QuantitativeValue deliveryLeadTime); + + /** + * The type(s) of customers for which the given offer is valid. + * + * @return {@link BusinessEntityType} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleCustomerTypeList(); + + /** + * The type(s) of customers for which the given offer is valid. + * + * @return {@link BusinessEntityType} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + BusinessEntityType getEligibleCustomerType(); + + /** + * The type(s) of customers for which the given offer is valid. + * + * @param eligibleCustomerType BusinessEntityType value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleCustomerType(BusinessEntityType eligibleCustomerType); + + /** + * The duration for which the given offer is valid. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleDurationList(); + + /** + * The duration for which the given offer is valid. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getEligibleDuration(); + + /** + * The duration for which the given offer is valid. + * + * @param eligibleDuration QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleDuration(QuantitativeValue eligibleDuration); + + /** + * The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleQuantityList(); + + /** + * The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getEligibleQuantity(); + + /** + * The interval and unit of measurement of ordering quantities for which the offer or price specification is valid. This allows e.g. specifying that a certain freight charge is valid only for a certain quantity. + * + * @param eligibleQuantity QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleQuantity(QuantitativeValue eligibleQuantity); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getEligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion GeoShape value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(GeoShape eligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion Text value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(Text eligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is valid.

    See also [[ineligibleRegion]]. + * + * + * @param eligibleRegion Place value to set. + * @see https://github.com/schemaorg/schemaorg/issues/1741 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleRegion(Place eligibleRegion); + + /** + * The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getEligibleTransactionVolumeList(); + + /** + * The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + PriceSpecification getEligibleTransactionVolume(); + + /** + * The transaction volume, in a monetary unit, for which the offer or price specification is valid, e.g. for indicating a minimal purchasing volume, to express free shipping above a certain order volume, or to limit the acceptance of credit cards to purchases to a certain minimal amount. + * + * @param eligibleTransactionVolume PriceSpecification value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addEligibleTransactionVolume(PriceSpecification eligibleTransactionVolume); + + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @return {@link Text} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getGtinList(); + + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @return {@link Text} or {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + T getGtin(); + + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @param gtin Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addGtin(Text gtin); + /** + * A Global Trade Item Number ([GTIN](https://www.gs1.org/standards/id-keys/gtin)). GTINs identify trade items, including products and services, using numeric identification codes. + * + * A correct [[gtin]] value should be a valid GTIN, which means that it should be an all-numeric string of either 8, 12, 13 or 14 digits, or a "GS1 Digital Link" URL based on such a string. The numeric component should also have a [valid GS1 check digit](https://www.gs1.org/services/check-digit-calculator) and meet the other rules for valid GTINs. See also [GS1's GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) and [Wikipedia](https://en.wikipedia.org/wiki/Global_Trade_Item_Number) for more details. Left-padding of the gtin values is not required or encouraged. The [[gtin]] property generalizes the earlier [[gtin8]], [[gtin12]], [[gtin13]], and [[gtin14]] properties. + * + * The GS1 [digital link specifications](https://www.gs1.org/standards/Digital-Link/) expresses GTINs as URLs (URIs, IRIs, etc.). + * Digital Links should be populated into the [[hasGS1DigitalLink]] attribute. + * + * Note also that this is a definition for how to include GTINs in Schema.org data, and not a definition of GTINs in general - see the GS1 documentation for authoritative details. + * + * @param gtin URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addGtin(URL gtin); + + /** + * The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + */ + List getGtin12List(); + + /** + * The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + */ + Text getGtin12(); + + /** + * The GTIN-12 code of the product, or the product to which the offer refers. The GTIN-12 is the 12-digit GS1 Identification Key composed of a U.P.C. Company Prefix, Item Reference, and Check Digit used to identify trade items. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin12 Text value to set. + */ + void addGtin12(Text gtin12); + + /** + * The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getGtin13List(); + + /** + * The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getGtin13(); + + /** + * The GTIN-13 code of the product, or the product to which the offer refers. This is equivalent to 13-digit ISBN codes and EAN UCC-13. Former 12-digit UPC codes can be converted into a GTIN-13 code by simply adding a preceding zero. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin13 Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addGtin13(Text gtin13); + + /** + * The GTIN-14 code of the product, or the product to which the offer refers. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getGtin14List(); + + /** + * The GTIN-14 code of the product, or the product to which the offer refers. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getGtin14(); + + /** + * The GTIN-14 code of the product, or the product to which the offer refers. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin14 Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addGtin14(Text gtin14); + + /** + * The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getGtin8List(); + + /** + * The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getGtin8(); + + /** + * The GTIN-8 code of the product, or the product to which the offer refers. This code is also known as EAN/UCC-8 or 8-digit EAN. See [GS1 GTIN Summary](http://www.gs1.org/barcodes/technical/idkeys/gtin) for more details. + * + * @param gtin8 Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addGtin8(Text gtin8); + + /** + * Used to tag an item to be intended or suitable for consumption or use by adults only. + * + * @return {@link AdultOrientedEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2989 + */ + List getHasAdultConsiderationList(); + + /** + * Used to tag an item to be intended or suitable for consumption or use by adults only. + * + * @return {@link AdultOrientedEnumeration} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2989 + */ + AdultOrientedEnumeration getHasAdultConsideration(); + + /** + * Used to tag an item to be intended or suitable for consumption or use by adults only. + * + * @param hasAdultConsideration AdultOrientedEnumeration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2989 + */ + void addHasAdultConsideration(AdultOrientedEnumeration hasAdultConsideration); + + /** + * The GS1 digital link associated with the object. This URL should conform to the particular requirements of digital links. The link should only contain the Application Identifiers (AIs) that are relevant for the entity being annotated, for instance a [[Product]] or an [[Organization]], and for the correct granularity. In particular, for products:

    • A Digital Link that contains a serial number (AI 21) should only be present on instances of [[IndividualProduct]]
    • A Digital Link that contains a lot number (AI 10) should be annotated as [[SomeProduct]] if only products from that lot are sold, or [[IndividualProduct]] if there is only a specific product.
    • A Digital Link that contains a global model number (AI 8013) should be attached to a [[Product]] or a [[ProductModel]].
    Other item types should be adapted similarly. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3475 + */ + List getHasGS1DigitalLinkList(); + + /** + * The GS1 digital link associated with the object. This URL should conform to the particular requirements of digital links. The link should only contain the Application Identifiers (AIs) that are relevant for the entity being annotated, for instance a [[Product]] or an [[Organization]], and for the correct granularity. In particular, for products:
    • A Digital Link that contains a serial number (AI 21) should only be present on instances of [[IndividualProduct]]
    • A Digital Link that contains a lot number (AI 10) should be annotated as [[SomeProduct]] if only products from that lot are sold, or [[IndividualProduct]] if there is only a specific product.
    • A Digital Link that contains a global model number (AI 8013) should be attached to a [[Product]] or a [[ProductModel]].
    Other item types should be adapted similarly. + * + * @return {@link URL} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3475 + */ + URL getHasGS1DigitalLink(); + + /** + * The GS1 digital link associated with the object. This URL should conform to the particular requirements of digital links. The link should only contain the Application Identifiers (AIs) that are relevant for the entity being annotated, for instance a [[Product]] or an [[Organization]], and for the correct granularity. In particular, for products:
    • A Digital Link that contains a serial number (AI 21) should only be present on instances of [[IndividualProduct]]
    • A Digital Link that contains a lot number (AI 10) should be annotated as [[SomeProduct]] if only products from that lot are sold, or [[IndividualProduct]] if there is only a specific product.
    • A Digital Link that contains a global model number (AI 8013) should be attached to a [[Product]] or a [[ProductModel]].
    Other item types should be adapted similarly. + * + * @param hasGS1DigitalLink URL value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3475 + */ + void addHasGS1DigitalLink(URL hasGS1DigitalLink); + + /** + * A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings. + * + * @return {@link QuantitativeValue} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + */ + List getHasMeasurementList(); + + /** + * A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings. + * + * @return {@link QuantitativeValue} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + */ + QuantitativeValue getHasMeasurement(); + + /** + * A measurement of an item, For example, the inseam of pants, the wheel size of a bicycle, the gauge of a screw, or the carbon footprint measured for certification by an authority. Usually an exact measurement, but can also be a range of measurements for adjustable products, for example belts and ski bindings. + * + * @param hasMeasurement QuantitativeValue value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2811 + */ + void addHasMeasurement(QuantitativeValue hasMeasurement); + + /** + * Specifies a MerchantReturnPolicy that may be applicable. + * + * @return {@link MerchantReturnPolicy} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + List getHasMerchantReturnPolicyList(); + + /** + * Specifies a MerchantReturnPolicy that may be applicable. + * + * @return {@link MerchantReturnPolicy} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + MerchantReturnPolicy getHasMerchantReturnPolicy(); + + /** + * Specifies a MerchantReturnPolicy that may be applicable. + * + * @param hasMerchantReturnPolicy MerchantReturnPolicy value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2288 + */ + void addHasMerchantReturnPolicy(MerchantReturnPolicy hasMerchantReturnPolicy); + + /** + * This links to a node or nodes indicating the exact quantity of the products included in an [[Offer]] or [[ProductCollection]]. + * + * @return {@link TypeAndQuantityNode} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getIncludesObjectList(); + + /** + * This links to a node or nodes indicating the exact quantity of the products included in an [[Offer]] or [[ProductCollection]]. + * + * @return {@link TypeAndQuantityNode} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + TypeAndQuantityNode getIncludesObject(); + + /** + * This links to a node or nodes indicating the exact quantity of the products included in an [[Offer]] or [[ProductCollection]]. + * + * @param includesObject TypeAndQuantityNode value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addIncludesObject(TypeAndQuantityNode includesObject); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + List getIneligibleRegionList(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @return {@link GeoShape} or {@link Text} or {@link Place} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + T getIneligibleRegion(); + + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion GeoShape value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(GeoShape ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Text ineligibleRegion); + /** + * The ISO 3166-1 (ISO 3166-1 alpha-2) or ISO 3166-2 code, the place, or the GeoShape for the geo-political region(s) for which the offer or delivery charge specification is not valid, e.g. a region where the transaction is not allowed.

    See also [[eligibleRegion]]. + * + * + * @param ineligibleRegion Place value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2242 + */ + void addIneligibleRegion(Place ineligibleRegion); + + /** + * The current approximate inventory level for the item or items. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getInventoryLevelList(); + + /** + * The current approximate inventory level for the item or items. + * + * @return {@link QuantitativeValue} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + QuantitativeValue getInventoryLevel(); + + /** + * The current approximate inventory level for the item or items. + * + * @param inventoryLevel QuantitativeValue value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addInventoryLevel(QuantitativeValue inventoryLevel); + + /** + * Indicates whether this content is family friendly. + * + * @return {@link Boolean} + */ + List getIsFamilyFriendlyList(); + + /** + * Indicates whether this content is family friendly. + * + * @return {@link Boolean} + */ + Boolean getIsFamilyFriendly(); + + /** + * Indicates whether this content is family friendly. + * + * @param isFamilyFriendly Boolean value to set. + */ + void addIsFamilyFriendly(Boolean isFamilyFriendly); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @return {@link OfferItemCondition} + */ + List getItemConditionList(); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @return {@link OfferItemCondition} + */ + OfferItemCondition getItemCondition(); + + /** + * A predefined value from OfferItemCondition specifying the condition of the product or service, or the products or services included in the offer. Also used for product return policies to specify the condition of products accepted for returns. + * + * @param itemCondition OfferItemCondition value to set. + */ + void addItemCondition(OfferItemCondition itemCondition); + + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @return {@link Product} or {@link Event} or {@link AggregateOffer} or {@link Trip} or {@link CreativeWork} or {@link Service} or {@link MenuItem} + */ + List getItemOfferedList(); + + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @return {@link Product} or {@link Event} or {@link AggregateOffer} or {@link Trip} or {@link CreativeWork} or {@link Service} or {@link MenuItem} + */ + T getItemOffered(); + + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Product value to set. + */ + void addItemOffered(Product itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Event value to set. + */ + void addItemOffered(Event itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered AggregateOffer value to set. + */ + void addItemOffered(AggregateOffer itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Trip value to set. + */ + void addItemOffered(Trip itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered CreativeWork value to set. + */ + void addItemOffered(CreativeWork itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered Service value to set. + */ + void addItemOffered(Service itemOffered); + /** + * An item being offered (or demanded). The transactional nature of the offer or demand is documented using [[businessFunction]], e.g. sell, lease etc. While several common expected types are listed explicitly in this definition, others can be used. Using a second type, such as Product or a subtype of Product, can clarify the nature of the offer. + * + * @param itemOffered MenuItem value to set. + */ + void addItemOffered(MenuItem itemOffered); + + /** + * Length of the lease for some [[Accommodation]], either particular to some [[Offer]] or in some cases intrinsic to the property. + * + * @return {@link Duration} or {@link QuantitativeValue} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2373 + */ + List getLeaseLengthList(); + + /** + * Length of the lease for some [[Accommodation]], either particular to some [[Offer]] or in some cases intrinsic to the property. + * + * @return {@link Duration} or {@link QuantitativeValue} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2373 + */ + T getLeaseLength(); + + /** + * Length of the lease for some [[Accommodation]], either particular to some [[Offer]] or in some cases intrinsic to the property. + * + * @param leaseLength Duration value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2373 + */ + void addLeaseLength(Duration leaseLength); + /** + * Length of the lease for some [[Accommodation]], either particular to some [[Offer]] or in some cases intrinsic to the property. + * + * @param leaseLength QuantitativeValue value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/2373 + */ + void addLeaseLength(QuantitativeValue leaseLength); + + /** + * The [[mobileUrl]] property is provided for specific situations in which data consumers need to determine whether one of several provided URLs is a dedicated 'mobile site'. + * + * To discourage over-use, and reflecting intial usecases, the property is expected only on [[Product]] and [[Offer]], rather than [[Thing]]. The general trend in web technology is towards [responsive design](https://en.wikipedia.org/wiki/Responsive_web_design) in which content can be flexibly adapted to a wide range of browsing environments. Pages and sites referenced with the long-established [[url]] property should ideally also be usable on a wide variety of devices, including mobile phones. In most cases, it would be pointless and counter productive to attempt to update all [[url]] markup to use [[mobileUrl]] for more mobile-oriented pages. The property is intended for the case when items (primarily [[Product]] and [[Offer]]) have extra URLs hosted on an additional "mobile site" alongside the main one. It should not be taken as an endorsement of this publication style. + * + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3134 + */ + List getMobileUrlList(); + + /** + * The [[mobileUrl]] property is provided for specific situations in which data consumers need to determine whether one of several provided URLs is a dedicated 'mobile site'. + * + * To discourage over-use, and reflecting intial usecases, the property is expected only on [[Product]] and [[Offer]], rather than [[Thing]]. The general trend in web technology is towards [responsive design](https://en.wikipedia.org/wiki/Responsive_web_design) in which content can be flexibly adapted to a wide range of browsing environments. Pages and sites referenced with the long-established [[url]] property should ideally also be usable on a wide variety of devices, including mobile phones. In most cases, it would be pointless and counter productive to attempt to update all [[url]] markup to use [[mobileUrl]] for more mobile-oriented pages. The property is intended for the case when items (primarily [[Product]] and [[Offer]]) have extra URLs hosted on an additional "mobile site" alongside the main one. It should not be taken as an endorsement of this publication style. + * + * + * @return {@link Text} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3134 + */ + Text getMobileUrl(); + + /** + * The [[mobileUrl]] property is provided for specific situations in which data consumers need to determine whether one of several provided URLs is a dedicated 'mobile site'. + * + * To discourage over-use, and reflecting intial usecases, the property is expected only on [[Product]] and [[Offer]], rather than [[Thing]]. The general trend in web technology is towards [responsive design](https://en.wikipedia.org/wiki/Responsive_web_design) in which content can be flexibly adapted to a wide range of browsing environments. Pages and sites referenced with the long-established [[url]] property should ideally also be usable on a wide variety of devices, including mobile phones. In most cases, it would be pointless and counter productive to attempt to update all [[url]] markup to use [[mobileUrl]] for more mobile-oriented pages. The property is intended for the case when items (primarily [[Product]] and [[Offer]]) have extra URLs hosted on an additional "mobile site" alongside the main one. It should not be taken as an endorsement of this publication style. + * + * + * @param mobileUrl Text value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3134 + */ + void addMobileUrl(Text mobileUrl); + + /** + * The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getMpnList(); + + /** + * The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getMpn(); + + /** + * The Manufacturer Part Number (MPN) of the product, or the product to which the offer refers. + * + * @param mpn Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addMpn(Text mpn); + + /** + * A pointer to the organization or person making the offer. + * + * @return {@link Person} or {@link Organization} + */ + List getOfferedByList(); + + /** + * A pointer to the organization or person making the offer. + * + * @return {@link Person} or {@link Organization} + */ + T getOfferedBy(); + + /** + * A pointer to the organization or person making the offer. + * + * @param offeredBy Person value to set. + */ + void addOfferedBy(Person offeredBy); + /** + * A pointer to the organization or person making the offer. + * + * @param offeredBy Organization value to set. + */ + void addOfferedBy(Organization offeredBy); + + /** + * The offer price of a product, or of a price component when attached to PriceSpecification and its subtypes.

    Usage guidelines:

    * Use the [[priceCurrency]] property (with standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR") instead of including [ambiguous symbols](http://en.wikipedia.org/wiki/Dollar_sign#Currencies_that_use_the_dollar_or_peso_sign) such as '$' in the value.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
    * Note that both [RDFa](http://www.w3.org/TR/xhtml-rdfa-primer/#using-the-content-attribute) and Microdata syntax allow the use of a "content=" attribute for publishing simple machine-readable values alongside more human-friendly formatting.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols. + * + * + * @return {@link Number} or {@link Text} + */ + List getPriceList(); + + /** + * The offer price of a product, or of a price component when attached to PriceSpecification and its subtypes.

    Usage guidelines:

    * Use the [[priceCurrency]] property (with standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR") instead of including [ambiguous symbols](http://en.wikipedia.org/wiki/Dollar_sign#Currencies_that_use_the_dollar_or_peso_sign) such as '$' in the value.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
    * Note that both [RDFa](http://www.w3.org/TR/xhtml-rdfa-primer/#using-the-content-attribute) and Microdata syntax allow the use of a "content=" attribute for publishing simple machine-readable values alongside more human-friendly formatting.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols. + * + * + * @return {@link Number} or {@link Text} + */ + T getPrice(); + + /** + * The offer price of a product, or of a price component when attached to PriceSpecification and its subtypes.

    Usage guidelines:

    * Use the [[priceCurrency]] property (with standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR") instead of including [ambiguous symbols](http://en.wikipedia.org/wiki/Dollar_sign#Currencies_that_use_the_dollar_or_peso_sign) such as '$' in the value.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
    * Note that both [RDFa](http://www.w3.org/TR/xhtml-rdfa-primer/#using-the-content-attribute) and Microdata syntax allow the use of a "content=" attribute for publishing simple machine-readable values alongside more human-friendly formatting.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols. + * + * + * @param price Number value to set. + */ + void addPrice(Number price); + /** + * The offer price of a product, or of a price component when attached to PriceSpecification and its subtypes.

    Usage guidelines:

    * Use the [[priceCurrency]] property (with standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR") instead of including [ambiguous symbols](http://en.wikipedia.org/wiki/Dollar_sign#Currencies_that_use_the_dollar_or_peso_sign) such as '$' in the value.
    * Use '.' (Unicode 'FULL STOP' (U+002E)) rather than ',' to indicate a decimal point. Avoid using these symbols as a readability separator.
    * Note that both [RDFa](http://www.w3.org/TR/xhtml-rdfa-primer/#using-the-content-attribute) and Microdata syntax allow the use of a "content=" attribute for publishing simple machine-readable values alongside more human-friendly formatting.
    * Use values from 0123456789 (Unicode 'DIGIT ZERO' (U+0030) to 'DIGIT NINE' (U+0039)) rather than superficially similar Unicode symbols. + * + * + * @param price Text value to set. + */ + void addPrice(Text price); + + /** + * The currency of the price, or a price component when attached to [[PriceSpecification]] and its subtypes.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + */ + List getPriceCurrencyList(); + + /** + * The currency of the price, or a price component when attached to [[PriceSpecification]] and its subtypes.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @return {@link Text} + */ + Text getPriceCurrency(); + + /** + * The currency of the price, or a price component when attached to [[PriceSpecification]] and its subtypes.

    Use standard formats: [ISO 4217 currency format](http://en.wikipedia.org/wiki/ISO_4217), e.g. "USD"; [Ticker symbol](https://en.wikipedia.org/wiki/List_of_cryptocurrencies) for cryptocurrencies, e.g. "BTC"; well known names for [Local Exchange Trading Systems](https://en.wikipedia.org/wiki/Local_exchange_trading_system) (LETS) and other currency types, e.g. "Ithaca HOUR". + * + * @param priceCurrency Text value to set. + */ + void addPriceCurrency(Text priceCurrency); + + /** + * One or more detailed price specifications, indicating the unit price and delivery or payment charges. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getPriceSpecificationList(); + + /** + * One or more detailed price specifications, indicating the unit price and delivery or payment charges. + * + * @return {@link PriceSpecification} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + PriceSpecification getPriceSpecification(); + + /** + * One or more detailed price specifications, indicating the unit price and delivery or payment charges. + * + * @param priceSpecification PriceSpecification value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addPriceSpecification(PriceSpecification priceSpecification); + + /** + * The date after which the price is no longer available. + * + * @return {@link Date} + */ + List getPriceValidUntilList(); + + /** + * The date after which the price is no longer available. + * + * @return {@link Date} + */ + Date getPriceValidUntil(); + + /** + * The date after which the price is no longer available. + * + * @param priceValidUntil Date value to set. + */ + void addPriceValidUntil(Date priceValidUntil); + + /** + * A review of the item. + * + * @return {@link Review} + */ + List getReviewList(); + + /** + * A review of the item. + * + * @return {@link Review} + */ + Review getReview(); + + /** + * A review of the item. + * + * @param review Review value to set. + */ + void addReview(Review review); + + /** + * Review of the item. + * + * @return {@link Review} + */ + List getReviewsList(); + + /** + * Review of the item. + * + * @return {@link Review} + */ + Review getReviews(); + + /** + * Review of the item. + * + * @param reviews Review value to set. + */ + void addReviews(Review reviews); + + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @return {@link Person} or {@link Organization} + */ + List getSellerList(); + + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @return {@link Person} or {@link Organization} + */ + T getSeller(); + + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @param seller Person value to set. + */ + void addSeller(Person seller); + /** + * An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider. + * + * @param seller Organization value to set. + */ + void addSeller(Organization seller); + + /** + * The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getSerialNumberList(); + + /** + * The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getSerialNumber(); + + /** + * The serial number or any alphanumeric identifier of a particular product. When attached to an offer, it is a shortcut for the serial number of the product included in the offer. + * + * @param serialNumber Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addSerialNumber(Text serialNumber); + + /** + * Indicates information about the shipping policies and options associated with an [[Offer]]. + * + * @return {@link OfferShippingDetails} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getShippingDetailsList(); + + /** + * Indicates information about the shipping policies and options associated with an [[Offer]]. + * + * @return {@link OfferShippingDetails} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + OfferShippingDetails getShippingDetails(); + + /** + * Indicates information about the shipping policies and options associated with an [[Offer]]. + * + * @param shippingDetails OfferShippingDetails value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addShippingDetails(OfferShippingDetails shippingDetails); + + /** + * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getSkuList(); + + /** + * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers. + * + * @return {@link Text} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + Text getSku(); + + /** + * The Stock Keeping Unit (SKU), i.e. a merchant-specific identifier for a product or service, or the product to which the offer refers. + * + * @param sku Text value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addSku(Text sku); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @return {@link MemberProgramTier} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getValidForMemberTierList(); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @return {@link MemberProgramTier} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + MemberProgramTier getValidForMemberTier(); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @param validForMemberTier MemberProgramTier value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addValidForMemberTier(MemberProgramTier validForMemberTier); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidFromList(); + + /** + * The date when the item becomes valid. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidFrom(); + + /** + * The date when the item becomes valid. + * + * @param validFrom DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(DateTime validFrom); + /** + * The date when the item becomes valid. + * + * @param validFrom Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidFrom(Date validFrom); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getValidThroughList(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @return {@link DateTime} or {@link Date} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getValidThrough(); + + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough DateTime value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(DateTime validThrough); + /** + * The date after when the item is not valid. For example the end of an offer, salary period, or a period of opening hours. + * + * @param validThrough Date value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addValidThrough(Date validThrough); + + /** + * The warranty promise(s) included in the offer. + * + * @return {@link WarrantyPromise} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getWarrantyList(); + + /** + * The warranty promise(s) included in the offer. + * + * @return {@link WarrantyPromise} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + WarrantyPromise getWarranty(); + + /** + * The warranty promise(s) included in the offer. + * + * @param warranty WarrantyPromise value to set. + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addWarranty(WarrantyPromise warranty); +} diff --git a/generator/src/test/resources/data/filters/model/OfferCatalog.java b/generator/src/test/resources/data/filters/model/OfferCatalog.java new file mode 100644 index 00000000..68603695 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/OfferCatalog.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * An OfferCatalog is an ItemList that contains related Offers and/or further OfferCatalogs that are offeredBy the same provider. + * + * @see https://schema.org/OfferCatalog + */ +public interface OfferCatalog extends ItemList { +} diff --git a/generator/src/test/resources/data/filters/model/OfferItemCondition.java b/generator/src/test/resources/data/filters/model/OfferItemCondition.java new file mode 100644 index 00000000..7d27a796 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/OfferItemCondition.java @@ -0,0 +1,16 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import java.util.List; + +/** + * A list of possible conditions for the item. + * + * @see https://schema.org/OfferItemCondition + */ +public interface OfferItemCondition extends Enumeration { +} diff --git a/generator/src/test/resources/data/filters/model/OfferShippingDetails.java b/generator/src/test/resources/data/filters/model/OfferShippingDetails.java new file mode 100644 index 00000000..e2c8ced4 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/OfferShippingDetails.java @@ -0,0 +1,367 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DefinedRegion; +import filters.model.Distance; +import filters.model.Mass; +import filters.model.MemberProgramTier; +import filters.model.MonetaryAmount; +import filters.model.QuantitativeValue; +import filters.model.ShippingDeliveryTime; +import filters.model.ShippingRateSettings; +import filters.model.ShippingService; +import filters.model.datatype.Boolean; +import java.util.List; + +/** + * OfferShippingDetails represents information about shipping destinations. + * + * Multiple of these entities can be used to represent different shipping rates for different destinations: + * + * One entity for Alaska/Hawaii. A different one for continental US. A different one for all France. + * + * Multiple of these entities can be used to represent different shipping costs and delivery times. + * + * Two entities that are identical but differ in rate and time: + * + * E.g. Cheaper and slower: $5 in 5-7 days + * or Fast and expensive: $15 in 1-2 days. + * + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://schema.org/OfferShippingDetails + */ +public interface OfferShippingDetails extends StructuredValue { + + /** + * The total delay between the receipt of the order and the goods reaching the final customer. + * + * @return {@link ShippingDeliveryTime} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + List getDeliveryTimeList(); + + /** + * The total delay between the receipt of the order and the goods reaching the final customer. + * + * @return {@link ShippingDeliveryTime} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + ShippingDeliveryTime getDeliveryTime(); + + /** + * The total delay between the receipt of the order and the goods reaching the final customer. + * + * @param deliveryTime ShippingDeliveryTime value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + */ + void addDeliveryTime(ShippingDeliveryTime deliveryTime); + + /** + * The depth of the item. + * + * @return {@link Distance} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getDepthList(); + + /** + * The depth of the item. + * + * @return {@link Distance} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getDepth(); + + /** + * The depth of the item. + * + * @param depth Distance value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addDepth(Distance depth); + /** + * The depth of the item. + * + * @param depth QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addDepth(QuantitativeValue depth); + + /** + * Indicates when shipping to a particular [[shippingDestination]] is not available. + * + * @return {@link Boolean} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getDoesNotShipList(); + + /** + * Indicates when shipping to a particular [[shippingDestination]] is not available. + * + * @return {@link Boolean} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + Boolean getDoesNotShip(); + + /** + * Indicates when shipping to a particular [[shippingDestination]] is not available. + * + * @param doesNotShip Boolean value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addDoesNotShip(Boolean doesNotShip); + + /** + * Specification of a shipping service offered by the organization. + * + * @return {@link ShippingService} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getHasShippingServiceList(); + + /** + * Specification of a shipping service offered by the organization. + * + * @return {@link ShippingService} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + ShippingService getHasShippingService(); + + /** + * Specification of a shipping service offered by the organization. + * + * @param hasShippingService ShippingService value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addHasShippingService(ShippingService hasShippingService); + + /** + * The height of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getHeightList(); + + /** + * The height of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getHeight(); + + /** + * The height of the item. + * + * @param height QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addHeight(QuantitativeValue height); + /** + * The height of the item. + * + * @param height Distance value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addHeight(Distance height); + + /** + * indicates (possibly multiple) shipping destinations. These can be defined in several ways, e.g. postalCode ranges. + * + * @return {@link DefinedRegion} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getShippingDestinationList(); + + /** + * indicates (possibly multiple) shipping destinations. These can be defined in several ways, e.g. postalCode ranges. + * + * @return {@link DefinedRegion} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + DefinedRegion getShippingDestination(); + + /** + * indicates (possibly multiple) shipping destinations. These can be defined in several ways, e.g. postalCode ranges. + * + * @param shippingDestination DefinedRegion value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addShippingDestination(DefinedRegion shippingDestination); + + /** + * Indicates the origin of a shipment, i.e. where it should be coming from. + * + * @return {@link DefinedRegion} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3122 + */ + List getShippingOriginList(); + + /** + * Indicates the origin of a shipment, i.e. where it should be coming from. + * + * @return {@link DefinedRegion} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3122 + */ + DefinedRegion getShippingOrigin(); + + /** + * Indicates the origin of a shipment, i.e. where it should be coming from. + * + * @param shippingOrigin DefinedRegion value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3122 + */ + void addShippingOrigin(DefinedRegion shippingOrigin); + + /** + * The shipping rate is the cost of shipping to the specified destination. Typically, the maxValue and currency values (of the [[MonetaryAmount]]) are most appropriate. + * + * @return {@link MonetaryAmount} or {@link ShippingRateSettings} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getShippingRateList(); + + /** + * The shipping rate is the cost of shipping to the specified destination. Typically, the maxValue and currency values (of the [[MonetaryAmount]]) are most appropriate. + * + * @return {@link MonetaryAmount} or {@link ShippingRateSettings} + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getShippingRate(); + + /** + * The shipping rate is the cost of shipping to the specified destination. Typically, the maxValue and currency values (of the [[MonetaryAmount]]) are most appropriate. + * + * @param shippingRate MonetaryAmount value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addShippingRate(MonetaryAmount shippingRate); + /** + * The shipping rate is the cost of shipping to the specified destination. Typically, the maxValue and currency values (of the [[MonetaryAmount]]) are most appropriate. + * + * @param shippingRate ShippingRateSettings value to set. + * @see https://github.com/schemaorg/schemaorg/issues/2506 + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addShippingRate(ShippingRateSettings shippingRate); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @return {@link MemberProgramTier} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + List getValidForMemberTierList(); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @return {@link MemberProgramTier} + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + MemberProgramTier getValidForMemberTier(); + + /** + * The membership program tier an Offer (or a PriceSpecification, OfferShippingDetails, or MerchantReturnPolicy under an Offer) is valid for. + * + * @param validForMemberTier MemberProgramTier value to set. + * @see https://pending.schema.org + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://github.com/schemaorg/schemaorg/issues/3563 + */ + void addValidForMemberTier(MemberProgramTier validForMemberTier); + + /** + * The weight of the product or person. + * + * @return {@link Mass} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List getWeightList(); + + /** + * The weight of the product or person. + * + * @return {@link Mass} or {@link QuantitativeValue} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + T getWeight(); + + /** + * The weight of the product or person. + * + * @param weight Mass value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addWeight(Mass weight); + /** + * The weight of the product or person. + * + * @param weight QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + void addWeight(QuantitativeValue weight); + + /** + * The width of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + List getWidthList(); + + /** + * The width of the item. + * + * @return {@link QuantitativeValue} or {@link Distance} + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + T getWidth(); + + /** + * The width of the item. + * + * @param width QuantitativeValue value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addWidth(QuantitativeValue width); + /** + * The width of the item. + * + * @param width Distance value to set. + * @see https://github.com/schemaorg/schemaorg/issues/3617 + */ + void addWidth(Distance width); +} diff --git a/generator/src/test/resources/data/filters/model/OpeningHoursSpecification.java b/generator/src/test/resources/data/filters/model/OpeningHoursSpecification.java new file mode 100644 index 00000000..67ec7594 --- /dev/null +++ b/generator/src/test/resources/data/filters/model/OpeningHoursSpecification.java @@ -0,0 +1,157 @@ +/* + * This class is auto generated by the schema.org code generator program. + * https://github.com/Kobee1203/schema-org-java + * Do not edit the class manually. + */ +package filters.model; + +import filters.model.DayOfWeek; +import filters.model.datatype.Date; +import filters.model.datatype.DateTime; +import filters.model.datatype.Time; +import java.util.List; + +/** + * A structured value providing information about the opening hours of a place or a certain service inside a place.

    + * The place is __open__ if the [[opens]] property is specified, and __closed__ otherwise.

    If the value for the [[closes]] property is less than the value for the [[opens]] property then the hour range is assumed to span over the next day. + * + * + * @see https://blog.schema.org/2012/11/08/good-relations-and-schema-org/ + * @see https://schema.org/OpeningHoursSpecification + */ +public interface OpeningHoursSpecification extends StructuredValue { + + /** + * The closing hour of the place or service on the given day(s) of the week. + * + * @return {@link Time} + * @see https://schema.org/docs/collab/GoodRelationsTerms + */ + List