MACHO Project: Variable Star Catalog

Meta Database Query Syntax and Semantics


Index

  • Editing the prefabricated query
  • CCL Search Keys
  • CCL Syntax
  • Regular Expressions
  • Field Matching
  • CCL Examples


    Editing the prefabricated query

    The user's input to the query form is converted into a symbolic language for expressing boolean query structures. The language is known as CCL and is defined by the ISO 8777 standard. The user may modify the prefabricated query but additional syntax checking will not occur until the query is processed during the DBM search request.

    CCL Search Keys

    The search keys, all of which follow, are case sensitive:

    Query Form FieldCCL Nameformatsyntax

    Amplitude: rAmp_r_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Amplitude: bAmp_b_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Amplitude: r-bAmp_rminusb_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Amplitude: VAmp_KV_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Amplitude: RAmp_KR_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Amplitude: V-RAmp_KVminusKR_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Amplitude: r = bAmp_reqb_x100numeric allows arithmetic operators: < <= = > >= <>

    ClassificationClassificationword allows regular expressions, pattern matching

    Locator: Field Fieldnumeric allows arithmetic operators: < <= = > >= <>
    Locator: Tile Tilenumeric allows arithmetic operators: < <= = > >= <>
    Locator: Seqn Seqnnumeric allows arithmetic operators: < <= = > >= <>
    Locator: RA (hh:mm:ss, J2000)TelRAword allows regular expressions, pattern matching
    Locator: Dec (dd:mm:ss, J2000)TelDecword allows regular expressions, pattern matching
    Locator: RA (radians, J2000)RARad_x100Knumeric allows arithmetic operators: < <= = > >= <>
    Locator: Dec (radians, J2000)DecRad_x100Knumeric allows arithmetic operators: < <= = > >= <>

    Magnitude: rMagAve_r_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Magnitude: bMagAve_b_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Magnitude: r-bMagAve_rminusb_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Magnitude: VMagAve_KV_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Magnitude: RMagAve_KR_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Magnitude: V-RMagAve_KVminusKR_x1Knumeric allows arithmetic operators: < <= = > >= <>

    Period: rPeriod_r_x10Knumeric allows arithmetic operators: < <= = > >= <>
    Period: bPeriod_b_x10Knumeric allows arithmetic operators: < <= = > >= <>
    Period: r = bPeriod_reqb_x100numeric allows arithmetic operators: < <= = > >= <>

    Statistics: Chi2r: rChi2r_r_x100numeric allows arithmetic operators: < <= = > >= <>
    Statistics: Chi2r: bChi2r_b_x100numeric allows arithmetic operators: < <= = > >= <>
    Statistics: Sig: rSig_r_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Statistics: Sig: bSig_b_x1Knumeric allows arithmetic operators: < <= = > >= <>
    Statistics: SupRSA: rSupRsa_r_x100numeric allows arithmetic operators: < <= = > >= <>
    Statistics: SupRSA: bSupRsa_b_x100numeric allows arithmetic operators: < <= = > >= <>

    VariabilityIndexVariabilityIndex_x100numeric allows arithmetic operators: < <= = > >= <>

  • The database manager does not support floating point search keys, so the affected keys have been multiplied by an appropriate factor to convert to integer. The multiplier is indicated by the CCL name's `_x' extension.

    For example, the keywords RARad_x100K and DecRad_x100K are RA/Dec in radians multiplied by 100000. The keyword VariabilityIndex_x100 is the user's input for VariabilityIndex multiplied by 100. The keyword Sig_r_x1K is the user's input for Sig_r multiplied by 1000.

  • The bounding box radius is not provided since the database manager does not have the geographic concept of a point within a bounded region. The equivalent logical expression is fabricated by the initial query form.

    CCL Syntax

    The following is a simplification of the CCL definition in order to quickly illustrate valid syntax.

  • CCLFind ::= CCLFind Op Elements | Elements

  • Op ::= "and" | "or" | "not"

  • Elements ::= '(' CCLFind ')' | Term | Keyword Relation Term | Keyword Relation '(' CCLFind ')' | Keyword '=' string ':' string
    I.e. Elements are either a recursive definition, a list of Terms, Keywords followed by Terms, Keywords followed by a recursive definition or Keywords in a range (lower:upper).

  • Term ::= Term string | string
    I.e. Term may contain a blank

  • Relation ::= '=' | '>=' | '<=' | '<>' | '>' | '<'

    Regular Expressions

    Specific text fields allow pattern matching using regular expressions. The syntax follows:

  • x matches the character x.
  • . matches any character.
  • [...] matches the set of characters specified; such as [abc] or [a-c].
    and the operators:
  • x* matches x zero or more times.
  • x+ matches x one or more times.
  • x? matches x once or twice.
  • xy matches x, then y.
  • x|y matches either x or y.
    The order of evaluation may be changed by using parenthesis.

    Note the difference between '*' in the regular expression used by this search and its use by a Unix shell. A close approximation to the shell construct is '.*' (that's dot followed by star).

    Field Matching

    Field matching occurs with the following constraints:

  • Matches are case insensitive.
  • List elements within a field are separated by field separators; an incomplete list of separators includes { ,.&|/*=%}.
  • Any field separator may be interchangably used.
  • If the field specifically allows regular expression matching, each list element may contain a regular expression.

    Field Matching Examples

    To search on selected Fields,

  • (Field = <99) finds all LMC entries
  • (Field = >=10 < 20) finds Fields 10 to 19
  • (Field = 1..99) finds all LMC entries
  • (Field = 1..99 100..199 ) finds all LMC and SMC entries
  • (Field = 1..99,100..199 ) finds all LMC and SMC entries

    CCL Examples

  • someday .....

    Acknowledgement to use when referencing MACHO Project data

    "This paper utilizes public domain data originally obtained by the MACHO Project, whose work was performed under the joint auspices of the U.S. Department of Energy, National Nuclear Security Administration by the University of California, Lawrence Livermore National Laboratory under contract No. W-7405-Eng-48, the National Science Foundation through the Center for Particle Astrophysics of the University of California under cooperative agreement AST-8809616, and the Mount Stromlo and Siding Spring Observatory, part of the Australian National University."


    email enquiries

    and