SWC:Semantic Data Transformation

Project Goals

 * Create a (set of) REST services enabling automated discovery of structured data from text under the assumption that the discovery service already knows the pattern structure is going to fill.

Notes on implementation

 * Establish a flexible REST service architecture allowing easy extension with new discovery capabilities.
 * Caching solutions to improve performance

Scenario 1: Recognizing an Address
Define a service which receives a Text, knows the PostalAddress object pattern and transforms this into a PostalAddress instance. The data transformation is not completely blind as the service is informed on the pattern that it has to discover.

A Schema.org postal address Schema.org object is briefly defined by the below properties (see PostalAddress for full definition): For example, such a service will take (the encoded ) version of the below text and obtain various structured serializations such as JSON-LD which would be used in an HTML solution like
 * streetAddress:Text
 * addressLocality:Text
 * addressRegion:Text
 * postalCode:Text
 * postOfficeBoxNumber:Text
 * addressCountry:Country

therefore it has to understand/discover  as a city , as a street address and so on.

Request and Response
A typical request will be like:

GET /postaladdress/?q=Roots%20Restaurant%20at%20The%20Orchard%20Garden%20Hotel%3Cbr%3E%0A %20466%20Bush%20Street%20(at%20Grant%20Ave)%3Cbr%3E%0A%20San%20Francisco%2C%20California%2094108%3Cbr%3E%0A%20Phone%3A%20415.659.0349%20%3Cbr%3E%0A%20%3Ca%20href%3D%22mailto%3Aevents%40theorchardgardenhotel.com%22%3EEmail%20Us%20by%20clicking%20here%3C%2Fa%3E

with  as parameter taking an URL encoded text as value. and a typical JSON answer would be: If the service fails to recognize some property then it should not include it in the response. For information on the model of responses see Mapping Schema.org vocabulary to JSON Objects.

Scenario 2: Recognizing Places
Place is somehow a concept related to a PostalAddress therefore the discovery treatment may follow the same procedures.

Scenario 3: Recognizing Organization
See Organization.

Scenario 4: Recognizing an Event
See Event.

Scenario 5: Recognizing an Offer
See Offer.