SADiC: The Semantic API for the Delivery Context

SADiC Online Validator

Francesco CannistrÓ
fracan@inwind.it

 

Validator   Indicate Profile    Process Profile    Processing Options

 

 

SADiC is a Java API for the processing, the validation and the interrogation of delivery context information that is available by means of CC/PP  and/or UAProf  profiles. This site is a demonstration of the potentialities of SADiC that provides an online service for validating CC/PP and UAProf profiles.

 

 

The SADiC Online Validator

Welcome to the SADiC online service for validating CC/PP and UAProf profiles. 

The CC/PP (Composite Capability/Preference Profiles) and the UAProf (User Agent Profile) are two related standards for expressing delivery context information and they are based on theW3C Resource Description Framework (RDF). SADiC is an innovative Java API for processing CC/PP and UAProf profiles. SADiC is able to handle profiles that reference multiple vocabularies and to perform the resolution of multi-segments composed profiles. Here you can test the potentialities of SADiC and can validate your profiles.

To enjoy the service you must first enter your profile, then, if you want, you can personalize the processing options and finally you can process your profile and see the SADiC output. 

For more information about SADiC go here.
For more information about the vocabularies installed in the SADiC engine of this site go here
For more information about the CC/PP go to the home page of the CC/PP Working Group at the W3C.
For more information about UAProf go to the Open Mobile Alliance Web site or consult the earlier WAP Forum Releases. .


Validator    Indicate Profile    Process Profile    Processing Options

Indicate Your Profile

Here you can enter your profile. You can indicate a multi-segment composed profile by entering (in order) the profiles that act as segments. 
To add a profile segment you must first chose the type of the segment (i.e., whether an inline profile or a profile to be retrieved from the Internet), and then enter your profile (paste it or write its URL). If you want to process a single profile add only one segment. Once you indicated your composed profile you may want to customize the processing options before starting the processor

Add a Profile to your Multi-Segments composed Profile


 






process    set options

Add a Profile to your Multi-Segments composed Profile


 

 





process    set options

Add a Profile to your Multi-Segments composed Profile


 

 





process    set options


Validator    Indicate Profile    Process Profile    Processing Options

Process your CC/PP Profile

If you have already added all the profile segments to your multi-segments profile, now you can process it. If you want, before starting the processor  you can personalize the Processing Options (semantic, validation, messaging, cache, repository).

    Print RDF/XML serialization of the processed profile


Validator    Indicate Profile    Process Profile    Processing Options

Processing Options (semantic, validation, messaging, cache, repository)

Ontology Mode (significant only for the current set of installed vocabularies):

If you select this mode the CC/PP processor will treat as semantically equivalent all the attribute properties and component types whose definition takes place simultaneously within multiple and different RDF schemas representing subsequent versions of a whole logical vocabulary.  For example, actually there are three versions of the UAProf specification and each one redefines (either extends) the vocabulary defined by the previous versions within a newer namespace.

If you select this mode the CC/PP processor will consider multiple versions of a vocabulary as different vocabularies tied to different namespaces. However, since in some cases the same vocabulary can be identified by multiple and different  namespace URIs, the processor will manage these cases of vocabulary equivalence by mapping  all the "alias" namespaces to the same vocabulary. For example, the canonical namespace of the vocabulary tied to the first version of the UAProf specification is:
        http://www.wapforum.org/UAPROF/ccppschema-20000405
but this vocabulary is also referenced through one of  the following namespaces:
        http://www.wapforum.org/UAPROF/ccppschema-19991014
        http://www.wapforum.org/UAPROF/ccppschema-20010330
        http://www.wapforum.org/profiles/UAPROF/ccppschema-20010330

Validator    Indicate Profile    Process Profile    Processing Options (semantic, validation, messaging, cache, repository)

Validation Options (significant only for the current set of installed vocabularies):

Option:

Description:

Processor Behavior:

Validate Attribute Value Structures

Regards the validation of the RDF structure through which the value of an attribute property is instanced within a profile, with respect to the structure indicated for the range values of that property by the vocabulary that defines the attribute (e.g., an RDF container or an RDF Literal).

Idle
Ignore Attribute
Ignore Component 
Abort Profile
Validate Attribute Value Data Items

Regards the validation of the data items that populate the structure of the value of an attribute property indicated within a profile,  with respect to the data type indicated for the data items of the range values of that property by the vocabulary that defines the attribute (e.g., a data type representing an integer number). If the attribute range values are not structured (i.e., the values are not to be expressed through an RDF container) then the value of an instance of that attribute property within a profile must contain only one data item that corresponds to the property value itself.

Idle
Ignore Attribute
Ignore Component 
Abort Profile
Validate Text Attribute Value Data Items

Regards the validation of the data items whose data type represents text values (e.g. the "Literal" data type defined by UAProf). The usefulness of this option arises from the fact that often the constraints imposed by such data types are not strictly respected. For example, the "Literal" data type defined by UAProf constrains the data items of this type to be alphanumeric strings. However, many profiles (also proposed in the UAProf specification itself) indicate as value items of this type strings containing not allowed characters like white spaces or the '*' character.

Idle
Ignore Attribute
Ignore Component
Abort Profile
Validate Component Types

Regards the validation of the declaration of the profile components and default blocks against the vocabularies that define their RDF type. Furthermore, this option regards the verification that attributes belonging to a certain profile component respect the component constraints defined by a vocabulary.
(Note: be aware that if the RDF type of a profile component is a sub-type of another component type, then such a component is simultaneously of both the two component types and the attributes applicable to components of the parent-type can be asserted for the component of the child-type too. On the contrary, attributes constrained to be applicable for components of the child-type cannot be asserted for a component of the parent-type unless the type of such a component is the child-type itself or a sub-type of this).

Idle
Ignore Attribute
Ignore Component
Abort Profile 

LEGEND:

Idle: on a validation fault the processor forcedly include the element that caused the fault in the processed profile;  
Ignore Attribute: on a validation fault the processor ignores the attributes that cause that kind of fault;
Ignore Component: on a validation fault the processor ignores the component (or default block) where that fault occurred;
Abort Profile: on a validation fault the processor aborts the processing of the current profile.

Validator    Indicate Profile    Process Profile    Processing Options (semantic, validation, messaging, cache, repository)

Messaging Options (determine the log level for the printed information):

 
Debug Level

If you select this level all the processing information will be printed.

 
 
Info Level

If you select this level only the information on validation faults (both bypassed or that caused actions)
will be printed.

 
 
Warning Level

If you select this level only the information on validation faults that caused the ignoring of components
or attributes (or either the aborting of a profile) will be printed.

 
 
Severe Level

If you select this level only the information on validation faults that caused the ignoring of components
or the aborting of a profile will be printed.

 

Validator    Indicate Profile    Process Profile    Processing Options (semantic, validation, messaging, cache, repository)

Caching Options:


Active Cache

Do not active this option if one of the profiles you want to process may change dynamically even if it is stored always at the same URL.
(Note:  the processor retrieves a processed profile from the cache only if its creation pattern, including ontology mode and behavior on validation options, matches the current settings. However, when a profile is retrieved from the local cache, the available processing information  is that created when the profile was cached, and, therefore, the printed messages will depend on the log level that was set at that time).


Bypass Cache

Active this option if you want to be sure that the processing messages refer effectively to the profiles you want to process (and/or if you want to be sure that the processing information that will be printed respects the log level you have selected).

Validator    Indicate Profile    Process Profile    Processing Options (semantic, validation, messaging, cache, repository)

CC/PP Repository Options:

Option:

Description:

Select:
Retrieve only from the Net

When this option is active the processor does not try to retrieve a referenced profile from its local repository but directly tries to fetch it from the Internet. Active this option if one of the profiles you want to process may change dynamically even if it is to be retrieved always from the same URL.

YES
NO
Save Retrieved Profiles

When this option is active the profiles retrieved from the Internet are saved in a local repository for future use. Do not active this option if you do not want that the SADiC instance on this site maintains hard copies of your profiles.

YES
NO

Validator    Indicate Profile    Process Profile    Processing Options (semantic, validation, messaging, cache, repository)


INFORMATION ABOUT THE SET OF VOCABULARIES INSTALLED IN THE SADiC ENGIE IN THIS SITE

The current set of vocabularies installed in the instance of SADiC in this site comprehend the two versions of the CC/PP structural vocabulary (both the version proposed by the latest Working Draft and the older one), the CC/PP client vocabulary for printing and displaying, all the versions of the UAProf vocabulary and the Intel PCA vocabulary specified as an extension of  an UAProf schema. Due to errors contained in the UAProf schemas and in the schema defined by Intel PCA, the copies of these vocabularies that have been installed into the SADiC engine do not replicate literally the above schemas but have previously been corrected. Further more, since SADiC proposes an extension vocabulary that can be leveraged to express information currently included in some UAProf schemas by means of comment fields or by an improper use of RDF (e.g., the resolution rules that indicate the behavior to be adopted when merging multi-segments profiles or the "long range" of attribute properties whose values are structured as RDF containers), these vocabularies have been modified so that the same information that previously was specified informally for human-understanding purposes, now is specified formally and is machine-understandable too.
SADiC is able to process also profiles that reference vocabularies not yet installed. In these cases, since no information is available on the vocabularies, attributes are presumed to be allowed for assertions on every profile component (i.e., the attribute properties are presumed to have domain on the CC/PP root component type) and all valid RDF forms are allowed for the instancing of their values. Further more, in the case of multi-segments profiles, if the resolution rule for an attribute is not specified (as in the case of attributes of an unknown vocabulary) the profile resolution is performed by applying, for these attributes, the "next overrides previous" default rule.

Note: SADiC at the moment does not support the automatic retrieving of unknown vocabularies from the location specified by their namespace URI. This feature will probably be added  in future versions since it has already been tested with good results for typical cases. At the moment, problems with complex situations (that, however, should be very improbable) make the risk of incongruities arise, and, therefore, further investigations are still required. The major problem regards  RDF schemas that do not self-define a vocabulary through the proper use of only a recognized CC/PP structural vocabulary, but that reference other schemas neither yet installed and so on.   


Top 

 

For information, comments or suggestions contact the Webmaster.
Copyright (c) 2003 Francesco CannistrÓ.
All rights reserved.