/******************************************************************************* * Copyright 2013 Ericsson Nikola Tesla d.d. * * See the NOTICE file distributed with this work for additional * information regarding copyright ownership * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ package org.universAAL.ontology.ui.preferences; import org.universAAL.middleware.owl.DataRepOntology; import org.universAAL.middleware.owl.ManagedIndividual; import org.universAAL.middleware.owl.MergedRestriction; import org.universAAL.middleware.owl.OntClassInfoSetup; import org.universAAL.middleware.owl.Ontology; import org.universAAL.middleware.owl.PrivateResource; import org.universAAL.middleware.rdf.Resource; import org.universAAL.middleware.service.owl.Service; import org.universAAL.middleware.service.owl.ServiceBusOntology; import org.universAAL.middleware.ui.owl.Modality; import org.universAAL.ontology.UIPreferencesProfileFactory; import org.universAAL.ontology.language.Language; import org.universAAL.ontology.language.LanguageOntology; import org.universAAL.ontology.location.LocationOntology; import org.universAAL.ontology.profile.SubProfile; import org.universAAL.ontology.profile.Profile; import org.universAAL.ontology.profile.UserProfile; import org.universAAL.ontology.ui.preferences.service.UIPreferencesService; /** * @author eandgrg * */ public final class UIPreferencesProfileOntology extends Ontology { private static UIPreferencesProfileFactory factory = new UIPreferencesProfileFactory(); public static final String NAMESPACE = "http://ontology.universaal.org/InteractionPreferencesProfile.owl#"; // Extend UserProfile public static final String PROP_INTERACTION_PREF_PROFILE = Profile.PROP_HAS_SUB_PROFILE + "UIPreferences"; public UIPreferencesProfileOntology() { super(NAMESPACE); } public void create() { Resource r = getInfo(); r .setResourceComment("User Interaction preferences of a User based on ETSI ES 746 standard (Personalization and user profile management) and ES 202 642 draft (Personalization of eHealth systems)"); r.setResourceLabel("uipreferences"); addImport(DataRepOntology.NAMESPACE); addImport(ServiceBusOntology.NAMESPACE); addImport(LocationOntology.NAMESPACE); addImport(LanguageOntology.NAMESPACE); // ******* Declaration of enumeration classes of the ontology ******* // OntClassInfoSetup oci_PendingMessageBuilderType = createNewAbstractOntClassInfo(PendingMessageBuilderType.MY_URI); OntClassInfoSetup oci_MainMenuConfigurationType = createNewAbstractOntClassInfo(MainMenuConfigurationType.MY_URI); OntClassInfoSetup oci_ContentDensityType = createNewAbstractOntClassInfo(ContentDensityType.MY_URI); OntClassInfoSetup oci_Size = createNewAbstractOntClassInfo(Size.MY_URI); OntClassInfoSetup oci_Intensity = createNewAbstractOntClassInfo(Intensity.MY_URI); OntClassInfoSetup oci_AlertType = createNewAbstractOntClassInfo(AlertType.MY_URI); OntClassInfoSetup oci_ColorType = createNewAbstractOntClassInfo(ColorType.MY_URI); OntClassInfoSetup oci_GenericFontFamily = createNewAbstractOntClassInfo(GenericFontFamily.MY_URI); OntClassInfoSetup oci_WindowLayoutType = createNewAbstractOntClassInfo(WindowLayoutType.MY_URI); OntClassInfoSetup oci_Status = createNewAbstractOntClassInfo(Status.MY_URI); OntClassInfoSetup oci_PendingDialogsBuilderType = createNewAbstractOntClassInfo(PendingDialogsBuilderType.MY_URI); OntClassInfoSetup oci_Gender = createNewAbstractOntClassInfo(VoiceGender.MY_URI); // ******* Declaration of regular classes of the ontology ******* // OntClassInfoSetup oci_VisualPreferences = createNewOntClassInfo( VisualPreferences.MY_URI, factory, 0); OntClassInfoSetup oci_SystemMenuPreferences = createNewOntClassInfo( SystemMenuPreferences.MY_URI, factory, 1); OntClassInfoSetup oci_AccessMode = createNewOntClassInfo( AccessMode.MY_URI, factory, 2); OntClassInfoSetup oci_AlertPreferences = createNewOntClassInfo( AlertPreferences.MY_URI, factory, 3); OntClassInfoSetup oci_GeneralInteractionPreferences = createNewOntClassInfo( GeneralInteractionPreferences.MY_URI, factory, 4); OntClassInfoSetup oci_AuditoryPreferences = createNewOntClassInfo( AuditoryPreferences.MY_URI, factory, 5); OntClassInfoSetup oci_UIPreferences = createNewOntClassInfo( UIPreferencesSubProfile.MY_URI, factory, 6); OntClassInfoSetup oci_UIPreferencesService = createNewOntClassInfo( UIPreferencesService.MY_URI, factory, 7); // ******* Add content to enumeration classes of the ontology ******* // oci_PendingMessageBuilderType.setResourceComment(""); oci_PendingMessageBuilderType .setResourceLabel("PendingMessageBuilderType"); oci_PendingMessageBuilderType .toEnumeration(new ManagedIndividual[] { PendingMessageBuilderType.simpleTable }); oci_MainMenuConfigurationType.setResourceComment(""); oci_MainMenuConfigurationType .setResourceLabel("MainMenuConfigurationType"); oci_MainMenuConfigurationType.addSuperClass(ManagedIndividual.MY_URI); oci_MainMenuConfigurationType.toEnumeration(new ManagedIndividual[] { MainMenuConfigurationType.classic, MainMenuConfigurationType.smart, MainMenuConfigurationType.taskBar }); oci_ContentDensityType.setResourceComment(""); oci_ContentDensityType.setResourceLabel("ContentDensityType"); oci_ContentDensityType.addSuperClass(ManagedIndividual.MY_URI); oci_ContentDensityType.toEnumeration(new ManagedIndividual[] { ContentDensityType.overview, ContentDensityType.detailed }); oci_Size.setResourceComment(""); oci_Size.setResourceLabel("Size"); oci_Size.addSuperClass(ManagedIndividual.MY_URI); oci_Size.toEnumeration(new ManagedIndividual[] { Size.small, Size.medium, Size.large }); oci_Intensity.setResourceComment(""); oci_Intensity.setResourceLabel("Intensity"); oci_Intensity.addSuperClass(ManagedIndividual.MY_URI); oci_Intensity.toEnumeration(new ManagedIndividual[] { Intensity.low, Intensity.medium, Intensity.high }); oci_AlertType.setResourceComment(""); oci_AlertType.setResourceLabel("AlertType"); oci_AlertType.addSuperClass(ManagedIndividual.MY_URI); oci_AlertType.toEnumeration(new ManagedIndividual[] { AlertType.visualOnly, AlertType.audioOnly, AlertType.visualAndAudio }); oci_ColorType.setResourceComment(""); oci_ColorType.setResourceLabel("ColorType"); oci_ColorType.addSuperClass(ManagedIndividual.MY_URI); oci_ColorType.toEnumeration(new ManagedIndividual[] { ColorType.white, ColorType.black, ColorType.lightGray, ColorType.darkGrey, ColorType.lightBlue, ColorType.darkBlue, ColorType.lightGreen, ColorType.darkGreen, ColorType.lightRed, ColorType.darkRed, ColorType.orange, ColorType.yellow, ColorType.cyan, ColorType.purple, ColorType.magenta, ColorType.pink }); oci_GenericFontFamily.setResourceComment(""); oci_GenericFontFamily.setResourceLabel("GenericFontFamily"); oci_GenericFontFamily.addSuperClass(ManagedIndividual.MY_URI); oci_GenericFontFamily.toEnumeration(new ManagedIndividual[] { GenericFontFamily.serif, GenericFontFamily.sans_serif, GenericFontFamily.cursive, GenericFontFamily.fantasy, GenericFontFamily.monospace }); oci_WindowLayoutType.setResourceComment(""); oci_WindowLayoutType.setResourceLabel("WindowLayoutType"); oci_WindowLayoutType.addSuperClass(ManagedIndividual.MY_URI); oci_WindowLayoutType.toEnumeration(new ManagedIndividual[] { WindowLayoutType.tiled, WindowLayoutType.overlap }); oci_Status.setResourceComment(""); oci_Status.setResourceLabel("Status"); oci_Status.addSuperClass(ManagedIndividual.MY_URI); oci_Status.toEnumeration(new ManagedIndividual[] { Status.on, Status.off }); oci_PendingDialogsBuilderType.setResourceComment(""); oci_PendingDialogsBuilderType .setResourceLabel("PendingDialogsBuilderType"); oci_PendingDialogsBuilderType.toEnumeration(new ManagedIndividual[] { PendingDialogsBuilderType.table, PendingDialogsBuilderType.buttons }); oci_Gender.setResourceComment(""); oci_Gender.setResourceLabel("VoiceGender"); oci_Gender.addSuperClass(ManagedIndividual.MY_URI); oci_Gender.toEnumeration(new ManagedIndividual[] { VoiceGender.male, VoiceGender.female }); // ******* Add content to regular classes of the ontology ******* // oci_VisualPreferences.setResourceComment(""); oci_VisualPreferences.setResourceLabel("VisualPreferences"); oci_VisualPreferences.addSuperClass(ManagedIndividual.MY_URI); oci_VisualPreferences.addSuperClass(PrivateResource.MY_URI); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_BACKGROUND_COLOR).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_BACKGROUND_COLOR, ColorType.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_FLASHING_RESOURCES).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_FLASHING_RESOURCES, Status.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_DAY_NIGHT_MODE).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_DAY_NIGHT_MODE, Status.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_HIGHLIGHT_COLOR).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_HIGHLIGHT_COLOR, ColorType.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_WINDOW_LAYOUT).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_WINDOW_LAYOUT, WindowLayoutType.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_FONT_FAMILY).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_FONT_FAMILY, GenericFontFamily.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_BRIGHTNESS).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_BRIGHTNESS, Intensity.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_COMPONENT_SPACING).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_COMPONENT_SPACING, Intensity.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_CONTENT_CONTRAST).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_CONTENT_CONTRAST, Intensity.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_SCREEN_RESOLUTION).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_SCREEN_RESOLUTION, Intensity.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_CURSOR_SIZE).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_CURSOR_SIZE, Size.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_SCREEN_SAVER_USAGE).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_SCREEN_SAVER_USAGE, Status.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_FONT_COLOR).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_FONT_COLOR, ColorType.MY_URI, 1, 1)); oci_VisualPreferences.addObjectProperty( VisualPreferences.PROP_FONT_SIZE).setFunctional(); oci_VisualPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( VisualPreferences.PROP_FONT_SIZE, Size.MY_URI, 1, 1)); oci_SystemMenuPreferences.setResourceComment(""); oci_SystemMenuPreferences.setResourceLabel("SystemMenuPreferences"); oci_SystemMenuPreferences.addSuperClass(ManagedIndividual.MY_URI); oci_SystemMenuPreferences.addSuperClass(PrivateResource.MY_URI); oci_SystemMenuPreferences.addObjectProperty( SystemMenuPreferences.PROP_MAIN_MENU_CONFIGURATION) .setFunctional(); oci_SystemMenuPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( SystemMenuPreferences.PROP_MAIN_MENU_CONFIGURATION, MainMenuConfigurationType.MY_URI, 1, 1)); oci_SystemMenuPreferences.addObjectProperty( SystemMenuPreferences.PROP_UIREQUEST_PERSISTANCE) .setFunctional(); oci_SystemMenuPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( SystemMenuPreferences.PROP_UIREQUEST_PERSISTANCE, Status.MY_URI, 1, 1)); oci_SystemMenuPreferences.addObjectProperty( SystemMenuPreferences.PROP_PENDING_DIALOG_BUILDER) .setFunctional(); oci_SystemMenuPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( SystemMenuPreferences.PROP_PENDING_DIALOG_BUILDER, PendingDialogsBuilderType.MY_URI, 1, 1)); oci_SystemMenuPreferences.addObjectProperty( SystemMenuPreferences.PROP_PENDING_MESSAGE_BUILDER) .setFunctional(); oci_SystemMenuPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( SystemMenuPreferences.PROP_PENDING_MESSAGE_BUILDER, PendingMessageBuilderType.MY_URI, 1, 1)); oci_SystemMenuPreferences.addObjectProperty( SystemMenuPreferences.PROP_SEARCH_FEATURE_IS_FIRST) .setFunctional(); oci_SystemMenuPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( SystemMenuPreferences.PROP_SEARCH_FEATURE_IS_FIRST, Status.MY_URI, 1, 1)); oci_AccessMode.setResourceComment(""); oci_AccessMode.setResourceLabel("AccessMode"); oci_AccessMode.addSuperClass(ManagedIndividual.MY_URI); oci_AccessMode.addSuperClass(PrivateResource.MY_URI); oci_AccessMode.addObjectProperty(AccessMode.PROP_OLFACTORY_MODE_STATUS) .setFunctional(); oci_AccessMode.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AccessMode.PROP_OLFACTORY_MODE_STATUS, Status.MY_URI, 1, 1)); oci_AccessMode.addObjectProperty(AccessMode.PROP_AUDITORY_MODE_STATUS) .setFunctional(); oci_AccessMode.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AccessMode.PROP_AUDITORY_MODE_STATUS, Status.MY_URI, 1, 1)); oci_AccessMode.addObjectProperty(AccessMode.PROP_VISUAL_MODE_STATUS); oci_AccessMode .addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AccessMode.PROP_VISUAL_MODE_STATUS, Status.MY_URI, 1, 1)); oci_AccessMode.addObjectProperty(AccessMode.PROP_TEXTUAL_MODE_STATUS) .setFunctional(); oci_AccessMode.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AccessMode.PROP_TEXTUAL_MODE_STATUS, Status.MY_URI, 1, 1)); oci_AccessMode.addObjectProperty(AccessMode.PROP_TACTILE_MODE_STATUS) .setFunctional(); oci_AccessMode.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AccessMode.PROP_TACTILE_MODE_STATUS, Status.MY_URI, 1, 1)); oci_AlertPreferences.setResourceComment(""); oci_AlertPreferences.setResourceLabel("AlertPreferences"); oci_AlertPreferences.addSuperClass(ManagedIndividual.MY_URI); oci_AlertPreferences.addSuperClass(PrivateResource.MY_URI); oci_AlertPreferences.addObjectProperty( AlertPreferences.PROP_ALERT_OPTION).setFunctional(); oci_AlertPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AlertPreferences.PROP_ALERT_OPTION, AlertType.MY_URI, 1, 1)); oci_GeneralInteractionPreferences.setResourceComment(""); oci_GeneralInteractionPreferences .setResourceLabel("GeneralInteractionPreferences"); oci_GeneralInteractionPreferences .addSuperClass(ManagedIndividual.MY_URI); oci_GeneralInteractionPreferences.addSuperClass(PrivateResource.MY_URI); oci_GeneralInteractionPreferences.addObjectProperty( GeneralInteractionPreferences.PROP_SECONDARY_LANGUAGE) .setFunctional(); oci_GeneralInteractionPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( GeneralInteractionPreferences.PROP_SECONDARY_LANGUAGE, Language.MY_URI, 1, 1)); oci_GeneralInteractionPreferences.addObjectProperty( GeneralInteractionPreferences.PROP_PREFERRED_MODALITY) .setFunctional(); oci_GeneralInteractionPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( GeneralInteractionPreferences.PROP_PREFERRED_MODALITY, Modality.MY_URI, 1, 1)); oci_GeneralInteractionPreferences.addObjectProperty( GeneralInteractionPreferences.PROP_CONTENT_DENSITY) .setFunctional(); oci_GeneralInteractionPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( GeneralInteractionPreferences.PROP_CONTENT_DENSITY, ContentDensityType.MY_URI, 1, 1)); oci_GeneralInteractionPreferences.addObjectProperty( GeneralInteractionPreferences.PROP_SECONDARY_MODALITY) .setFunctional(); oci_GeneralInteractionPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( GeneralInteractionPreferences.PROP_SECONDARY_MODALITY, Modality.MY_URI, 1, 1)); oci_GeneralInteractionPreferences.addObjectProperty( GeneralInteractionPreferences.PROP_PREFERRED_LANGUAGE) .setFunctional(); oci_GeneralInteractionPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( GeneralInteractionPreferences.PROP_PREFERRED_LANGUAGE, Language.MY_URI, 1, 1)); oci_AuditoryPreferences.setResourceComment(""); oci_AuditoryPreferences.setResourceLabel("AuditoryPreferences"); oci_AuditoryPreferences.addSuperClass(ManagedIndividual.MY_URI); oci_AuditoryPreferences.addSuperClass(PrivateResource.MY_URI); oci_AuditoryPreferences.addObjectProperty( AuditoryPreferences.PROP_SPEECH_RATE).setFunctional(); oci_AuditoryPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AuditoryPreferences.PROP_SPEECH_RATE, Intensity.MY_URI, 1, 1)); oci_AuditoryPreferences.addObjectProperty( AuditoryPreferences.PROP_VOICE_GENDER).setFunctional(); oci_AuditoryPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AuditoryPreferences.PROP_VOICE_GENDER, VoiceGender.MY_URI, 1, 1)); oci_AuditoryPreferences.addObjectProperty( AuditoryPreferences.PROP_SYSTEM_SOUNDS).setFunctional(); oci_AuditoryPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AuditoryPreferences.PROP_SYSTEM_SOUNDS, Status.MY_URI, 1, 1)); oci_AuditoryPreferences.addObjectProperty( AuditoryPreferences.PROP_VOLUME).setFunctional(); oci_AuditoryPreferences .addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AuditoryPreferences.PROP_VOLUME, Intensity.MY_URI, 1, 1)); oci_AuditoryPreferences.addObjectProperty( AuditoryPreferences.PROP_PITCH).setFunctional(); oci_AuditoryPreferences .addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AuditoryPreferences.PROP_PITCH, Intensity.MY_URI, 1, 1)); oci_AuditoryPreferences.addObjectProperty( AuditoryPreferences.PROP_KEY_SOUND).setFunctional(); oci_AuditoryPreferences .addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( AuditoryPreferences.PROP_KEY_SOUND, Status.MY_URI, 1, 1)); oci_UIPreferences.setResourceComment(""); oci_UIPreferences.setResourceLabel("UIPreferencesSubProfile"); // UIPreferencesSubProfile is SubProfile oci_UIPreferences.addSuperClass(SubProfile.MY_URI); oci_UIPreferences.addObjectProperty( UIPreferencesSubProfile.PROP_INTERACTION_PREFERENCES) .setFunctional(); oci_UIPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( UIPreferencesSubProfile.PROP_INTERACTION_PREFERENCES, GeneralInteractionPreferences.MY_URI, 1, 1)); oci_UIPreferences.addObjectProperty( UIPreferencesSubProfile.PROP_VISUAL_PREFERENCES) .setFunctional(); oci_UIPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( UIPreferencesSubProfile.PROP_VISUAL_PREFERENCES, VisualPreferences.MY_URI, 1, 1)); oci_UIPreferences.addObjectProperty( UIPreferencesSubProfile.PROP_SYSTEM_MENU_PREFERENCES) .setFunctional(); oci_UIPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( UIPreferencesSubProfile.PROP_SYSTEM_MENU_PREFERENCES, SystemMenuPreferences.MY_URI, 1, 1)); oci_UIPreferences.addObjectProperty( UIPreferencesSubProfile.PROP_ALERT_PREFERENCES).setFunctional(); oci_UIPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( UIPreferencesSubProfile.PROP_ALERT_PREFERENCES, AlertPreferences.MY_URI, 0, 1)); oci_UIPreferences.addObjectProperty( UIPreferencesSubProfile.PROP_ACCESS_MODE).setFunctional(); oci_UIPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( UIPreferencesSubProfile.PROP_ACCESS_MODE, AccessMode.MY_URI, 1, 1)); oci_UIPreferences.addObjectProperty( UIPreferencesSubProfile.PROP_AUDIO_PREFERENCES).setFunctional(); oci_UIPreferences.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( UIPreferencesSubProfile.PROP_AUDIO_PREFERENCES, AuditoryPreferences.MY_URI, 1, 1)); // service oci_UIPreferencesService .setResourceComment("The class of services controling the UI Preferences"); oci_UIPreferencesService.setResourceLabel("UI Preferences Service"); oci_UIPreferencesService.addSuperClass(Service.MY_URI); oci_UIPreferencesService.addObjectProperty( UIPreferencesService.PROP_CONTROLS).setFunctional(); oci_UIPreferencesService.addRestriction(MergedRestriction .getAllValuesRestriction(UIPreferencesService.PROP_CONTROLS, UIPreferencesSubProfile.MY_URI)); // Extend UserProfile OntClassInfoSetup oci = extendExistingOntClassInfo(UserProfile.MY_URI); oci.addObjectProperty(PROP_INTERACTION_PREF_PROFILE).addSuperProperty( Profile.PROP_HAS_SUB_PROFILE); oci.addRestriction(MergedRestriction .getAllValuesRestrictionWithCardinality( PROP_INTERACTION_PREF_PROFILE, UIPreferencesSubProfile.MY_URI, 0, 1)); } }